Welcome to the fourth issue of The Left Fold, a weekly programming article digest.
Go, an experimental language from Google: Rob Pike, Ken Thompson, and other Google employees released "a systems programming language" designed to be "expressive, concurrent, [and] garbage-collected". (reddit, news.yc, LtU, slashdot).
More details and select reactions:
A comparison of Go with Brand X, a very similar, existing programming language. Search for "And the winner is" for a summary and revelation of Brand X's surprising identity. (expanded from this mailing list post, reddit, news.yc)
The talk claims performance "typically within 10-20% of C". Independent benchmarks of the more complete of two implementations may be found at the Computer Language Benchmarks Game (reddit). A Stackless Python user replicated the concurrency demo in the talk (reddit, news.yc).
Clojure: upcoming polymorphic primitives: Discussion of the motivation behind two new features of the language, datatypes and protocols, and how they help polymorphism and decouple Clojure from Java. Clojure experience helpful.
Can Java Be Saved?: advocates for several changes to Java with examples.
PyPy Düsseldorf Sprint Report: writeup of improvements to inlining, guard chains, and exceptions.
Branch coverage: an improved measure of code coverage using branches.
- Clearance-based Pathfinding and Hierarchical Annotated A* Search: with examples from real-time strategy games featuring differently-sized units.
Erlang at Facebook (pdf): description of how it's used and what they like.
Philosophizing about Programming; or "Why I'm learning to love functional programming": advocates for functional programming based on experience maintaining large software projects (reddit)
- Writing great documentation: an ongoing series on technical documentation.
- cdecl: a web interface to "the C gibberish to English translator"
By popular demand, an email subscription to The Left Fold is now available. See the icon (source) at the top-right of this page.
Starting this week I am omitting links to discussions on other sites that I did not find informative.