ECMAScript

Ecma Internationalは3日(米国時間)、マウンテンビューで開催された第98回総会においてECMA-262 5th editionを承認した。ECMA-262はECMAScript Language Specificationを定めたもので、JavaScriptやActionScript、JScriptなどのスクリプト言語の標準仕様として活用されている。ECMAScript Language Specification 5th editionはECMA-262.pdfからダウンロード可能。5th editionにおける主な新機能は次のとおり。

ECMAScript 5th editionの新機能
アクセッサプロパティ
リフレクティブクリエーションとオブジェクトインスペクション
プロパティ属性のプログラム制御
配列操作の強化
JSONオブジェクトエンコーディングフォーマットのサポート
強化されたエラーチェックとプログラムセキュリティを実現するためのstrict mode

ブラウザ間のJavaScript実装の互換性向上や、3rd edition以降に登場した新機能を整理して仕様としてまとめ込むことに主眼が置かれている。ECMAScript 5th editionは1999年に承認された3rd edition以来、10年ぶりの改訂となる。ECMAScript 3.1として策定が進められていたバージョンがベースになっている。言語仕様を大幅に変更することになるECMAScript 4th editionの策定も進められたが、承認が得られないまま実質的に見送りとなった。これを受けて5th editionは3.1として進められていた仕様に4thの機能のいくつかをマージしたものとして整理され、今回の承認となった。

ECMA-262 ECMAScript Language Specification 登場時期
ECMA-262 1st edition なし
ECMA-262 2nd edition 1998年8月
ECMA-262 3rd edition 1999年12月
ECMA-262 4th edition 承認にいたらず
ECMA-262 5th edition 2009年12月

ECMAScriptのもっとも広く知られている実装はJavaScript。この10年間でJavaScriptはWebアプリケーションやWebサービスにおいて主要な開発言語まで成長した。ブラウザ間の互換性を実現するうえで標準仕様が必要であるため、ブラウザベンダはECMAScriptの改訂版の標準化に取り組んできた。ECMAScript 5th editionはいわゆるJavaScript 2.0のベース仕様として各ブラウザベンダに活用されることになるとみられる。

なおES5 is an ECMA standardに掲載されている報告によると、総会での投票は19の賛成票に対して2の反対票があり、IBMはdecimalが欠如していることを理由に反対票を、Intelは標準化の知的所有権への影響を調査する時間が足りなかったことを理由に反対票をあげている。3分の2以上の投票で可決されるため、承認となった。