MugはJavaScriptのコードをコンパイルしてJavaの中間コードにしてしまうソフトウェアです。

ここ最近、プログラミング言語同士の壁が徐々に破壊されている気がします。あるプログラミング言語上で別なプログラミング言語を動くようにしたり、置き換えてしまったりするような類です。今回はその一つ、JavaScriptをJavaVM上で動かすという、かなり無茶な気がしなくもない、そんなソフトウェアMugを紹介します。


元コードです。


コンパイルしました。


実行しました。確かに出力されています。


デモ2です。確かにJavaScriptです。


こちらもJVM上で実行されています。

MugはシンプルかつスタティックなJVMのためのJavaScriptコンパイラーです。書き方に多少の特徴はありますが、コードはあくまでもJavaScriptです。それをコンパイラを使ってclassファイルにします。その結果、普通にJavaコマンドを使って実行できるという仕組みです。MugがCoffeeScriptで書かれているという所も注目に値します。かなり面白いソフトウェアです。

MugはCoffeeScript製、MIT Licenseのオープンソース・ソフトウェアです。

MOONGIFTはこう見る

プログラマーが覚えるべきプログラミング言語は何でしょうか。会社に就職した時に与えられるプログラミング言語でしょうか。しかしそこに未来が存在し続けるとは限りません。廃れてしまったり、開発元が方針を変えたら新しいプログラミング言語を覚え直さないといけないでしょう。それは非常にリスキーなことです。

そんな状況に追い込まれないよう、常々プログラミング言語は2、3チャレンジしておくべきではないでしょうか。Web系、サーバ系、デスクトップ系、スマホ系と環境に応じて幾つかのプログラミング言語をピックアップしましょう。それぞれに特徴があるので習得はそれほど苦でもないかも知れません。楽しみながら新しい言語にチャレンジしてみてください。

timcameronryan/mug