--2日後(12月4日)にリリースを控えたJavaFXについてお聞かせください。リリースを待望していたユーザも多いとは思いますが、現状、RIA(Rich Internet Application)分野ではFlash/AIRを擁するAdobe、Silverlightを掲げるMicrosoftに遅れを取っているように思えます。後発としてリリースするにあたり、この分野におけるJavaFXの強み/弱みを教えていただけますか。

JavaFXではデスクトップPCだけでなく、モバイルデバイス、携帯端末、Blu-rayなどの上でも、近代的で高度なRIA環境を実現できる。だが、ツールとして見た場合、Adobeなどに対してJavaFXは遅れを取っている部分はある。NetBeansのUIは非常にシンプルだしね。この部分はたしかに弱い。だがJavaFXには、非常に洗練された複数のVMが用意されているので、これらを組み合わせれば、他の環境にはないエクスペリエンスが得られる。そしてもうひとつ、JavaFXにはすでに数多くのスタンダードAPIが存在する。つまり開発環境としては競合よりもずっとリッチであると言える。

「Don't use Emacs」発言で物議を醸したGosling氏だが、Javaのレガシー扱いにははっきりと不快感を示す

--一部では"JavaはすでにCOBOLのようなレガシーに近い"という声も上がっていますが…。

その意見にはまったく賛同しかねるね。そういうことを一部のRubyユーザなどが言っているのは知っているが、彼らが"RubyがJavaに取って替わる"と主張する根拠は、単にWebアプリケーションを早く作れるからだろう。だが、(出来上がったアプリの)パフォーマンスなどを見ると、とてもJavaに取って替われる言語になるとは思えない。Webプレゼンテーション層しか扱っていないんだから。その最悪の例がTwitterだ。あの性能、UIは悪夢でしかないね。

--ではあなたが興味をもっている動的言語は、具体的にどういったものがあるのでしょうか。

Scala、それにFortressかな。もうFortressは動的言語とは言い難いかもしれないけど。理由は科学演算に優れていて、数学的指向が強く、マルチコアの問題を解決するのに向いているから。逆にRubyやPythonは本当の意味でマルチスレッドではなく、シングルコア向きの言語で、小規模のWebアプリケーション作成には向いているだろう。

--最近は、学生が最初に学ぶプログラミング言語を選ぶとき、とっつきやすいスクリプト言語を選ぶ傾向にありますが…。

私としては、とくに物理や化学を専攻する学生なら、やはりJavaを選ぶべきだと思う。Webプレゼンテーション層しか扱えない言語とは違い、計算にも強く、複数のドメインに有用だ。そういう言語はJavaしかない。