Okay. First the big news, and then we'll get to the bigger news.
The Next Version of JS, ECMAScript 2015, is Now Standard
And man, did ECMAScript 2015 (that's the final, official name for it) have a lot of aliases. ES Harmony, ES.Next, and ECMAScript 6 (which made the most sense to me).
But now it's finally time for browsers to start supporting all these wonderful new features, like classes, modules, promises, maps, sets, and generators. Be sure to check out the full feature list with examples of each in this excellent set of community docs on GitHub.
Of course, developers have been able to get ahead of the curve and start using some of these features already because some browsers are ahead of the curve as well. Here's the link to a well-organized chart on ES 2015 browser support:
WebAssembly: An Optimized Universal Language Target for the Web
"... the dream of a universal, language-neutral intermediate form goes back to well before Melvin Conway‘s UNCOL (1958, the same year LISP was born)." Brendan Eich (JS creator) pointed out this little history lesson as he made the world-shaking announcement yesterday that a W3C community group called the WebAssembly CG would begin a multi-year endeavor to build a new intermediate representation language (IRL), called WebAssembly, that will be compatible with any browser.
Here are some other things that wasm will enable, according to scriptol.com:
- It has a garbage collector.
- Two notations of the code are possible: binary for executing or text for reading. Like an assembly language - but it is not one.
- A wasm LLVM backend is proposed initially. We can generate wasm code with an option from C/C++. It will then be available for other languages.