レシグ氏自ら語るスクリプト言語のロードマップ

大幅に機能を強化するECMAScript

2007/11/05

 「ECMAScriptは将来的に、Webにおける『唯一の言語』になるだろう」――。11月2日にMozilla JapanがShibuya.jsと共同で開催したイベント「The Future of JavaScript」において、米MozillaのJavaScriptエバンジェリスト、ジョン・レシグ(John Resig)氏が講演を行った。同氏は、ECMAScriptの今後について尋ねた会場からの質問に答え、このように述べた。

 ECMAScriptは、国際標準化機関のEcma Internationalが策定したスクリプト言語だ。JavaScriptとJScriptという異なるスクリプト言語の共通の部分を元に標準化されている。現在のバージョンは3で、10月末にバージョン4の最終ドラフトが公開されたばかりだ。

 「ECMAScript4は、バージョン3で書かれたコードがすべて動作するよう互換性を継続しつつ、より大規模なコードや複雑なアプリケーション構築にも対応できるようにしていきたい」(レシグ氏)。これまで同様、小規模プログラミングでの有用性を維持しながら、拡張性も志向していくという。

mozilla01.jpg 米MozillaのJavaScriptエバンジェリスト、ジョン・レシグ氏

 具体的な機能としては、まずJava風の「クラス」や「動的クラス」「インターフェース」がサポートされた。クラスの継承も可能という。またアノテーションによって、引数の型を指定できるようになるほか、独自に型を定義することが可能だ。さらに、「パッケージ」や「名前空間」「プログラムユニット」といった概念が導入された。プログラムユニットでは、あるプログラムユニットから別のプログラムユニットをインポートすることができ、リモートのURLからロードして使うことも可能という(関連記事)。

 こうして解説を聞くと大幅な機能拡張であり、スクリプト言語の特徴である軽量性よりも、むしろ、しっかりとした構造を持つ従来型言語を志向しているようにも見える。会場からも「ファットな言語になり、修正や実装が困難になるのではないか」という懸念が寄せられた。

 これに対しレシグ氏は「最初のハードルは今までと同じくらい簡単だ。ただ同時に、これまで以上に拡張性が高まっている」とコメントした。また、ECMAScript4が実際に普及するのはおそらく2009年ごろで、ほとんどのWebブラウザに実装されるようになるだろうとも述べている。

スクリプトエンジンはTamarinへ統合

 講演では同時に、ECMAScript Edition 4が動作するエンジンとなる「Tamarin」についても言及があった。Tamarinは、アドビシステムズから提供された仮想マシンのソースコードをベースにしたプロジェクトで、元々は、Flashで利用されているActionScript向けのエンジンだった。

 レシグ氏によると、Tamarinをめぐって「ActionMonkey」「ScreamingMonkey」「IronMonkey」という3つのプロジェクトが進行中という。

 ActionMonkeyは、FirefoxのJavaScriptエンジンである「SpiderMonkey」上にTamarinを統合していくというものだ。つまり、Tamarinという1つのエンジン上で、ActionScriptとJavaScript2の両方が動作することになり、これはFirefox 4で実装される予定という。2つめのScreamingMonkeyは、Internet Explorerに直接Tamarinを実装させることを狙うものだ。そして最後のIronMonkeyは、PythonやRubyといった言語がTamarin上で動作できるようにするもので、「言語の選択肢を広げることができる」という。

 現在のブラウザはほとんど、ECMAScrpit 3をベースにしたJavaScript 1.5およびその後継バージョンが搭載されている。しかし、JavaScript 2(ECMAScript 4ベース)はFirefox 4でサポートされ、その時期は2008年から2009年ごろになる見込みという。

関連リンク

(@IT 高橋睦美)

情報をお寄せください:

アイティメディアの提供サービス

キャリアアップ


- PR -
ソリューションFLASH

「ITmedia マーケティング」新着記事

マッチングサービス利用率トップ3は「Pairs」「タップル誕生」「Omiai」――MMDLaboとコロプラ共同調査
マッチングサービス・アプリの認知度は25.7%、うち利用経験者は30.2%。MMDLaboとコロプ...

インサイドセールスの生産性向上へ、「SATORI」と「BIZTEL」が連携
マーケティングオートメーションツール「SATORI」とクラウド型電話サービス「BIZTEL」が...

プレイド、「KARTE」にレコメンド機能を追加
CX(顧客体験)プラットフォーム「KARTE」に新機能。