Steve Yegge、RailsをJavaScriptに移植する

John Lam / 青木靖 訳
2007年6月24日

Foo Campで私が最初に行ったのは、「GoogleのRailsクローン」と題するSteve Yeggeの講演だった。このタイトルを見てどうして聞かずにいられようか?

Googleはプログラミング言語として、C++、Java、Python、JavaScriptの4つを使っている。WebのフロントエンドをJavaで書きたがる人がそういるとは思えないが、それはWebフロントエンド用のJavaコードをたくさん持っているGoogleにしても 同じだ。

Googleにおける開発者の生産性を引き上げるため、Steveは会社にRails(したがってRuby)を言語として採用するように訴えたが、それが叶わないとなると(Googleはインフラでサポートしなければならない言語の数を増やすのをとても嫌っている)、 彼は欲求不満のプログラマがみんなするだろうことをした。RailsをJavaScriptに 移植したのだ。1行1行、6ヶ月で、2000時間かけて。Steveはまったくコーディングの絶倫男だ。

SteveのコードはRhino JavaScriptエンジン上で動き、Rhino自体はJVM上で動く。彼はその過程でいくつかバグの修正や、セキュリティの大幅な強化も行っている(教訓: 移植の場合であっても、フレームワーク開発の早い時期にセキュリティ機構に取り組むことで、後に生じることになる痛みと時間を大きく減らすことができる)。それがNext Big Languageになると表明していることからも、SteveがいかにJavaScriptに惚れ込んでいるかわかるだろう。

そうなるのかもしれない。EcmaScrikpt 4で取り入れられるオプショナルな静的型は、彼のRails実装のパフォーマンスを大きく引き上げるだろう。

ほんとうにクールだ。いい話を聞かせてくれてありがとう!

 

home  rss  John Lamについて

オリジナル: Steve Yegge ported Rails to JavaScript