Webアプリケーションの開発言語としてJavaScriptはますますその重要度をましている。言語の仕様策定も活発だ。バイトコード仮想マシンやJITの実現(TamarinSquirrelFish)など実装側の努力もあり、JavaScriptの実行パフォーマンスは向上し続けている。クライアントサイドのみならずサーバサイドもJavaScriptで実装しようというAptana Jaxerが登場するなど、今もっともホットな言語といえる。

しかしながらWebアプリケーションの世界ではJavaやPHPが大きなシェアを占めてきたことや、RailsのようなRubyを使ったフレームワークの登場、Pythonの活用やC#の利用などもありJavaScriptを使いたがらないデベロッパも多い。そういったデベロッパはGWTのようにJavaScriptへ自動変換するフレームワークを活用できる。

ここではそうした取り組みのひとつとしてECMAScript 4をJavaScriptへ変換するツールMascaraを紹介したい。いわばJavaScript 2.0をより古いJavaScriptへ変換するツールだ。ECMAScript 4とJavaScriptは相反するものではない。将来的に登場するJavaScript 2.0はECMAScript 4の仕様にそったものになるだろう。しかし現状JavaScript 2.0すべてに対応したWebブラウザは存在していないため、ECMAScript 4にそったコードを記述してもWebアプリには使えない。

しかし、ECMAScript 4で登場する機能はかなり魅力的だ。特にコンパイル時に型チェックが実施できることやクラスの継承がシンプルに記述できることの利点は大きい。JavaScriptで構築するシステムは複雑になり続けている。従来の柔軟な側面よりもJavaのように厳密な記述ができることが重要になってきているため、ECMAScript 4にそったJavaScriptが記述できればその利益は大きい。

ECMAScript 4にそって記述されたコード - Mascaraサイトから抜粋

コンパイル時に型チェックが実現できていることがわかる

変換されたJavaScriptコード

そこでMascaraだ。MascaraはECMAScript 4で記載されたコードをJavaScriptへ変換する機能を提供する。ECMAScript 4の利益を教授しつつ、現在主流のWebブラウザで実行可能なJavaScriptに変換できるわけだ。すべての機能が実装されているわけではないが、有益な取り組みであることには間違いない。JavaScriptを使った開発を実施している場合は一度Mascaraを検討してみるといいだろう。