| 
開発者の
淺川浩紀君は,情報系学科に在学する大学生である。コンパイラの作成法を身につけたので,コンパイラを作るのが楽しくて仕方がない,という人である。筧PMが抱えるプロジェクトの中でも,書き下したソースの行数でいけば,どうやら断トツに一番のようである。若いってすごいな,と年寄りとしてはうらやましく思う。
いまから振り返ってみると,応募をした時点で,
Ruby やそのインタプリタの詳細や, .NET の詳細まではまだ勉強できていなかったように思われる。それが,この半年の間で,オブジェクトコードを設計してそれを吐き出す翻訳部分を実現するところまで詳しく勉強しきったのだから,まさに若さの勝利である。
ところで,一方ではその若さに心配が残る。同じ
Ruby を対象に処理系の高速化をさまざまに工夫している笹田さんが書いた行数を聞くと,わずかに 7000 行という。さまざまな生成系をうまく使い,計算機にプログラムを作らせているからである。それに対して淺川さんの方は,それぞれの
Ruby 言語機能ごとに試行錯誤を重ねていることもあって,どんどんとソースプログラムが増えていってしまうのだろう。いくらでもプログラムが書けてしまうので,ついついそうなる。もう少し経験を積み,見通しがつくようになると,「楽」をすること,「楽」ができることを考えるようになるし,考えられるようになる。
プロジェクトの目標であった,
“ Ruby で開発したアプリケーションを .NET 上に配付する”ことを可能とするレベルまで仕上げることを急いで欲しい。そして,公開して世の中で使ってもらおう。
そこで一段落がついたら,ゆったりとした気分で書き重ねたソースコードを眺め直して整理することを勧めたい。そうするとさらに“コンパイラって面白い”ことを見つけ出せるに違いない。
差し当たりは,実装ができていない機能の追加を仕上げて,早く公開するところまでもっていくことが何より必要とされている。なにより,“
Ruby で開発したアプリケーションを .NET 上に配付する”ことを可能とするのが目的であったのだから,具体的な Ruby で書いたアプリケーションを開発したコンパイラで翻訳して配付する,という実績を一つでも二つでも作ってみせるところまで頑張り抜いて欲しい。
Ruby
のもつ動的な側面への切り込みや,すでにコンパイラ開発ができてしまった静的な側面での最適化など,やるべきことはいろいろ見つかる。今回のプロジェクトで培った力をもって,さらに大きな課題に挑戦してみて欲しい。
|