On September 18, 2011, Brendan Eich held a talk at CapitolJS. In it, he covered more details on what will be in ECMAScript.next; how to react to the complaints voiced by Dart’s creators; and RiverTrail, a JavaScript extensions for parallel programming. This post summarizes the highlights of the first two topics.
In ECMAScript 6, template strings [^1] are a syntactic construct that facilitates the implementation of embedded domain-specific languages (DSLs) in JavaScript. They were originally called “quasi-literals”. This blog post explains how they work.
Warning: This blog post is slightly outdated. The terminology has changed:
Its good to see that not everyone at Google thinks that JavaScript “not viable in the long term” [1]. Quoting the highlights of a blog post by Alex Russell [via @MunichJS]:
2011-09-14: Rewrote of the section “What does it all mean?” and added new material on universal virtual machines. Added Crockford quote under “Other voices on Dart”. Added a conclusion.
2011-09-13: More on Eich’s comments at Hacker News.
Currying and partial application are two ways of transforming a function into another function with a generally smaller arity. While they are often confused with each other, they work differently. This post explains the details.
Node.js has a very nice module system that is easy to understand, yet distinguishes between the exports of a module and things that should be private to it. This post explains how the code of a Node.js module can be modified so that it works on both Node.js and web browsers. It also explains how to unit-test such code.