2014-07-22

Programmers apparently double down on publishing articles and updates during summer vacations. Here’s the second link collection this month that’s exclusively concerned with software development, and mostly with Java…

Lambda the Ultimate recently linked and excerpted two excellent posts on scientific computing by Graydon Hoare. Published in March, the first article looks at the history of computer languages as well as Python’s current dominance as a dedicated slow scripting language, intended to be coupled with a fast systems programming language. The second article is new and examines the less popular alternative, “Goldilocks” languages designed to handle all tasks, from ancient Lisp to the new Julia.

Brian Goetz’s State of the Specialization is a first informal sketch of proposed enhancements to Java and the JVM to support generics over primitives, and eventually over the also proposed value types. That’s a highly desirable fix for one of Java’s most obvious remaining defects compared to C#.

Lucy Carey’s Jaxenter article alerted me to Jan Kotek’s MapDB project, a very interesting Java database engine that can transparently serialize concurrent Java collections. MapDB originated as JDBM4 which itself was the latest of Kotek’s (G)DBM ports. Although I have yet to try it myself, MapDB looks like an ideal solution for simple local data persistence.

Aleksey Shipilёv’s Java Memory Model Pragmatics is a “very long transcript for a very long talk” that explains in detail how Java regulates concurrent memory access. Be sure to also check out his previous articles on optimization if you haven’t yet.

Lastly, the first official standard for Google’s new browser-based Dart language has been released. Standard ECMA-408: Dart Programming Language is free to download, like all ECMA standards. Hopefully the public standard will encourage browsers other than Chrome to integrate Dart support, though note that you can already compile to JavaScript.

(Updated Developer Links and Java Links & Tools)

Show more