プログラミング言語で考える「小泉改革とは何か」
2005-09-07


に行って知ったけど、Symantecから出ていたJava, Visual Cafeのコンパイラ
も彼が書いたんですね。Visual Cafeも使いました。けっこうお世話になって
るんですね。Thanks a lot. Walter, I love you! \(^O^)/
 それにしても、Java Scriptも書いてるし、彼は根っからの言語屋、それも
実装屋ですね。
 PerlやRubyは遅くて論外。Javaじゃ、バイトコードだし、やっぱ、男は黙っ
てネイティブコードな人は、試してみるといいでしょう。インラインアセンブ
ラがあるのが、いかにも、ネイティブコードがりがりじゃないと気がすまない
って感じがして、いいですねえ。
 今風で、面白いのは、HTMLの中にDのソースを埋め込んで書けること。Dコン
パイラはHTMLからDのソースを抜き出してコンパイルしてくれます。次の
GroovyもXMLを言語レベルで扱うことを考えていて、この辺の流れは、新しい
言語ならではの楽しさですね。
 短所としては、まだ、Dで書かれたライブラリが豊富じゃないことでしょう。
 それと、
[URL]
をみると、彼は、Datalight CやZortech C++のオリジナルがあれば、どんな状
態のものでもいいから捨てずにメールで連絡してほしいといってますね。自分
の作品なのに手元にとってなかったんでしょうか。

 それから、Groovyね。詳しくは、
[URL]
をどうぞ。
 これも昨年のLLで知って、次のJavaの改訂ではJDKに入る予定。
 Lispなんかに比べると、Javaって固いからね。それがよさでもあるんだけど、
たとえば、クロージャがなぜないんだと。いまJavaでやってる仕事、木やグラ
フの操作が多いので、IteratorやVisitorのクラスを作ったりして、窮屈にや
ってるけど、LispならMap一発じゃんなんて思うのね。
 クロージャはLispが本家本元で、日本ではRubyのイテレータのブロックでみ
んな使うようになりましたね。
 昔、ビル・ジョイは、Javaにテンプレート、クロージャ、コンティニュエー
ション(継続)など、Lisp的なものを入れたいと発言していた記憶がある。でも、
ゴスリング(Javaの設計者)は、そこまで急進的になれなかったそうです。彼も
元々Lisp屋なのにね。
 横浜のJavaOneで、テンプレートを入れたいとゴスリングが言ってから、何
年もかかってやっとJDK1.5でGenericsとして入りました。このペースじゃ、ク
ロージャなんかいつになるんだろう。それでスクリプト言語ではあるけど、
Groovyなんです。
 おれ、Rubyはほとんどまともなプログラム書く前に、Groovyに転んで、でも、
まだ自分じゃ全然コード書いてないです。つまり、どっちもものになってない、
相変わらずの畳水練状態。\(^O^)/
 Groovyに転んだ理由は簡単で、Javaの膨大なクラスライブラリが使える。ほ
とんどこの一点。あとはXMLの処理も取り込んできていることくらいかな。

 Java言語はいやだけど、Javaのクラスライブラリを使いたいという意味では、
Lisp系のllavaというのもあります。Java上で実装されたLisp系の言語として
は、Schemeを実装したKawaが一番有名ですね。SchemeといってもCommon Lisp
的拡張もあれこれ入ってます。
[URL]
をみてください。
 もっと脱線して、
[URL]
をみると、kawaの上に実装したEmacs
[URL]
JEmacs
なんてものもありますね。親亀の上に小亀を乗せて繰り返しで、もう一体、何
がなんだか。\(^O^)/
 さて、llavaは、
[URL]
にあります。KawaだとJavaのクラスライブラリを使いにくいから、Lispの文法
で膨大なJavaのクラスライブラリを使いたいというのが、そもそもの動機のよ
うです。

続きを読む
戻る

コメント(全1件)
コメントをする


記事を書く
powered by ASAHIネット