2013-03

Ecma wasn’t always Ecma

[2013-03-28] dev, javascript, jslang, jshistory
Most people know that ECMAScript is the language standard behind JavaScript [1]. Fewer people know that its name comes from Ecma International, the organization managing this standard. Interestingly, that organization started as “European Computer Manufacturers Association (ECMA)”, but renamed itself to “Ecma International” in 1994. That was done to reflect its increasingly international focus. Ecma is now not considered an acronym, any more. Ecma International is located in Geneva. In contrast, TC39 [1], the Ecma-hosted committee evolving ECMAScript, is rather USA-centric (true to where JavaScript was created and who created it) and usually meets somewhere in California.

Parallel JS (River Trail): soon in Firefox

[2013-03-24] dev, javascript
2013-12-23: A new blog post on ParallelJS (as Parallel JS is now called) supersedes this post.

Parallel JS will soon be included in Firefox Nightly builds. This project was initially called River Trail [1]. It automatically parallelizes code that uses the ParallelArray type and its array-like methods (map() etc.). [Source of this post: “Parallel JS lands” by Nicholas D. Matsakis.]

ECMAScript 6: TC39’s January 2013 meeting

[2013-03-21] esnext, tc39, dev, javascript
TC39 [1] is the committe that currently plans ECMAScript 6 (code-named ECMAScript.next), the next version of the JavaScript language standard. January 29–31, they had another meeting. Thanks to Rick Waldron’s notes, we can read up on what has been decided. This blog post describes the highlights. Previous blog posts summarized prior meetings.

(Note: a blog post on the March TC39 meeting will be posted at some time in the future.)

Subclassing builtins in ECMAScript 6

[2013-03-18] esnext, dev, javascript
[Update 2015-02-15] Newer version of this blog post: “Classes in ECMAScript 6 (final semantics)

In JavaScript, it is difficult to create sub-constructors of built-in constructors such as Array. This blog post explains the problem and possible solutions – including one that will probably be chosen by ECMAScript 6. The post is based on Allen Wirfs-Brock’s slides from a presentation he held on January 29, during a TC39 meeting.

Encoding permutations as integers via the Lehmer code (JavaScript)

[2013-03-13] dev, javascript, jslang
This blog post explores the Lehmer code, a way of mapping integers to permutations. It can be used to compute a random permutation (by computing a random integer and mapping it to a permutation) and more.

JavaScript: try-finally

[2013-03-11] dev, javascript, jslang
This blog post is a quick reminder of how try-finally works.

Will the term “web platform” replace “HTML5”?

[2013-03-07] dev, html5, webdev
When it comes to platforms for implementing applications, the term “web platform” seems to increasingly replace “HTML5” (which itself has largely replaced “Ajax” [1]). In this context, both terms denote the programming platform of web browsers. The former includes JavaScript. The latter doesn’t, strictly speaking, but it includes JavaScript-based APIs.

2013-02

ECMAScript 6’s parameter destructuring and forEach()

[2013-02-28] esnext, dev, javascript
This blog post gives a brief introduction to destructuring in ECMAScript 6 and how the array method forEach() profits from it.

Perl and Python influences in JavaScript

[2013-02-24] esnext, dev, javascript, jslang
If you search the Mozilla Central code base for the texts "Perl" and "Python" (don’t ignore case) then the comments mention what methods have been borrowed from those languages. The paths mentioned below are relative to /js/src/.
[Inspiration: a blog post by Ziyun Fei.]

Link-friendly content

[2013-02-20] blogging, publishing, computers
Have you published a blog post or a GitHub project? This document gives tips for making your content appealing to link to. They are based on things I noticed while collecting material for the JavaScript Weekly email newsletter. The tips should also make your content more appealing to “normal” readers.