Seasar Conference 2007 Autumn に行ってきた。
セッションのレポートは書くのに時間が掛かるので、原稿の締め切りが終わったら書く。 この記事では、とりあえずその他の事柄だけ。
飲み会
で、終わったあとにSeasarな人たちの飲み会にくっついていった。面識のある人は多くない。 羽生さん と、 yuum3 さんと、 t-wada さんと。でも、今回結構いろんな人と会えた。矢野さんときしださんはオフでははじめて会うし、お初にお目に掛かる人もいっぱい。
Irenkaには惚れ込んだのでIrenkaの発表をしていた 栗原さん に挨拶した。
Rubyについて
羽生さん曰く、
- "Ruby Associationは早々にSunを巻き込んでJavaみたいなLanguage Specificationの地位を確立した方がよい"
- "MatzのRubyはReference Implementationで"
- "Railsの都合で仕様変更が必要になったとき、CRubyは拒否したけどJRubyは受け入れたとかなるとコントロールを失うかもしれない"
- "そういうことはMatzじゃなくて周囲の誰かが気を回さないと"
未来について
Airは面白いし、S2Flex2の完成度はAir開発にすんなり馴染むんだろうなと思った。AirとIrenkaに感じたのは興奮と戸惑いだ。私は現在という時間位置においてこれらがもたらす可能性に熱さを感じることができる。一方でふと振り返ったとき、歴史の中でこれらがどのような位置に落ち着くのか分からずに足下が見えないような不安を感じた。
Air がクロスプラットフォームな共通基盤として台頭したとして、じゃあ今までのOSのシェア争いは何だったんだ? Airが成功したら、タスク管理+リソース管理+Airな簡素化されたOSが勝のか? JavaOSは、Java Chipの歴史とはどう絡む?
Irenka 、素晴らしい。可能性がある。そして、私はこれが難しいっていうことも知ってる。仕事では目的特化な、どちらかというとテンプレート適用に近いような簡易バイトコードジェネレータを作った。EclipseのJDTがクラス探索するあたりは趣味で弄った。MustangでCompiler APIが出たときには弄くってバイトコード生成させようとして、ベータプログラムの最中にAPIが大幅変更されて困った。このへんを、まあフルタイムでお仕事としてではあるけれども何とかしてしまったIrenka開発者はすごい。私もかつて趣味の時間の一部では手に負えなかったその辺の夢を追いかけたい。
けれどもね、これS式ならリーダーマクロでみんなもっと簡単にできてたことじゃないか。こんな労力やこんな天才を必要としなくても。結局S式が一番良いんだよ。でも、なぜかS式ではみんなは幸せになれなかった。なぜかはよく分からない。分からなくても、私もS式よりRubyやAnnotationのほうがいい。そこへ行くとみんなJavaのシンタックスはそれなりに受け入れて幸せになってる。だから、その幸せの上に更にかつてS式では繁栄しているマクロの楽園を移植できるなら、それはとてつもない価値を生む。
でも、私は考える。なぜ、S式じゃ駄目なんだ? S式は人類にとって何だったんだ? それとも、みんないずれはS式に帰って行くのか? 足下が見えないと、踏み出すのはとても恐ろしいことだ。
羽生さんは、「歴史は螺旋を描いている」「(OSについては)集中と分散を10年周期で繰り返す」「一回転するごとに少しずつ進歩する」という話。そうだね、そうして一回転してきて、その間に凝縮されたノウハウは薄い薄い層となって積み重なって地層になって、みんなはその地層の上に新しい螺旋を繰り返すんだ。地層の分だけ確実に進歩して、それは無駄にはならなくて、そして元の所に戻ってきたように見えるのは決して不思議ではなくて。
頭では分かっても、この歴史の総体を感覚として捉えられないことにふと疑問を感じたんだ。OSとは、JVMとは何だったの? TCP/IPは、HTTPは何だったの? S式は?
ただ、今新たな螺旋の足下にあるのはJVMだ。今からようやくJavaが繁栄するという羽生さんの意見には賛同する。ただ、歴史に何を学べるのかまだ実感できないので考えていたいのだ。