|Written by Ian Elliot|
|Friday, 06 May 2011|
It was a last-minute affair and was within a planned talk by Jeremy Ashkenas titled "CoffeScript as a JS/Next", which is a fairly provocative title.
It seems to have been enough to provoke Brendan Eich to take to the stage and say some words about project Harmony or Ecma TC39 which is supposed to eventually develop into ECMAScript 6th edition. He said some interesting things:
JS developers sometimes seem afraid of the future, specifically of what browser vendors and Ecma TC39 might do to them!
The basic idea seems to be a call to arms to make design of a language by committee more responsive to the community. By using CoffeeScript developers can form preferences for language features and make their wishes known - presumably before it is all too late.
Why does the community matter? One good reason is this: communities facing harsh survival tests (as JS’s has) reward merit better than committees operating under competitive and time pressures.
He also stated that Harmony would role out specifications so that browser manufacturers could start to build the new stuff in as soon as possible. He also provided a slide which lists the expected features in the next version of ECMAScript:
Later in the talk he expanded on ideas that are most probably in the next ECMAScript and those that on the horizon. Many of the changes are syntactic but there are also some deep semantic changes proposed:
I advocated strongly for standardizing prototypal inheritance a la CoffeeScript’s
He also reserved some harsh words for Google's Traceur project:
Open-source early, tell your TC39 colleagues your plans and intentions, invite others to join you. Don’t seed the googlecode project with all-Google-employee committers, work for months in relative secrecy, and then go open.
Despites all of the praise for CoffeScript the final conclusion is:
a transpiler (syntax only or mostly) or true compiler/runtime targeting JS (new semantics too) is ultimately not enough. Harmony proposals need to be implemented in several engines, ideally including V8 ...
|Last Updated ( Friday, 06 May 2011 )|