LL Future

http://ll.jus.or.jp/2008/

に行ってきました! たくさんの方とお会いできて楽しかったですが(例によってゆっくりとお話できなかった方も多くてすみません)、中でもお昼をご一緒したYpsilon藤田さんMonaOS & Moshひげぽんさんには、テクニカルにも面白いお話(イプシロンのリアルタイムGCとか)を詳しく聞けて、非常にエキサイティングでした。後から誘っていただいた私ばかり根掘り葉掘り質問してしまい、どうも失礼しました。(_ _) 他のセッションの方たちもそうでしたが、アプリはもちろん、言語処理系や仮想機械までさくっと作ってしまう方が多くて(もちろん実際にはものすごい努力があるわけですが)、その熱意とパワーに脱帽です。

「百年後の言語」セッション(LLで未来を発明する)は…私は未来じゃなくて過去の話ばかりしてすみません。いや、本当に人間の言葉でコンピュータに命令できるようになっているかもしれないし、量子計算機が実用化して「量子プログラミング」をしているかもしれないし、はたまたもうネタ切れで大して変わらないかもしれないし、わからないです。そういういろいろな「デタラメ予想」をしたら楽しかったのでしょうか(←はじめから気づけよ)。そのためには私が機械学習とか量子力学とか、もっと幅広い分野の勉強をしないといけませんが…

セッション最後に質問のあった「セキュリティ」については、言語の抽象度が上がれば(プログラミング言語レベルの)安全性も上がるはず、というのが私にとっての模範解答です。アセンブリよりRubyのほうがsecureなプログラムを書きやすい(ことが多い)ですよね、という。あと、プログラムを「情報流解析」して、機密情報の漏洩や、偽造データによる汚染を静的検査で防止する、みたいな研究分野もあります。

あと、「もっと関数型言語や静的型をプッシュしてほしかった」みたいな感想をいくつかいただきました。:-) これは帰り道で刺されないために空気を読んで自重した…わけではなくて、最近は命令型言語や型なし言語の周辺にも手を出しているので(Fail-Safe C to JavaとかCみたいなfreeのあるScheme?とか)、自分自身が言語中立になりつつある?せいかもしれません。λ計算関数型言語を中心に発展したプログラミング言語理論ですが、C言語とかにも応用できますよ!と最後に宣伝。

P.S. 複数の方に彼女ができたと伺い(そういえば女性が多かったような…)、しかもそのうちの何人かは会場にいたそうなのですが、すれちがいで一人も拝見できませんでした。残念

追記:はてなブックマーク経由で教えていただいた、質問した方のエントリ:
http://jj1bdx.blogspot.com/2008/08/programming-language-design-and.html

  • protecting the language from the buffer-overflow bugs;
  • preventing the garbage collector from crashing even in a hostile environment where the external attackers try to deliberately manipulate the pointers or variables to hack into the protected memory area;
  • implementing a syntax or semantics validation system in the programming language so that the programmers can apply it to validate the external data, such as those from the network-connected users; or
  • preventing the race condition, deadlocks, or any sort of resource starvation by the intentional or unintentional programming;

それ何てPOPL?(に限りませんが、それ系の学会/学界) いや、本当の実用への道のりはまだ長いかもしれませんが。