Java 7の登場は早くとも1年半後?
Java 7ではスクリプト言語のサポート強化以外に、クロージャの導入など大幅な仕様変更も検討されている。クロージャについてはまだ正式に導入されると決まったわけではないが、Java 7の新機能の中でも特に大きな議論を呼んでおり、コミュニティでも意見は完全に二分していると言っていい。
Gosling氏自身は当初から導入に賛成しており、次のように語っている。
「個人的にはJavaを作った当初からクロージャを入れるべきだと考えていた。確かにインナークラスなどである程度は代替できるが、クロージャを使えばよりシンプルにコードを記述でき、開発が容易になる。それに対して反対派の人々は、これ以上言語そのものを変えるべきではないと主張している。これ以上Javaを複雑にするな、とね」
いずれにしても、仕様が確定するにはもうしばらくかかるようだ。同氏は、Java 7のリリースに通常よりも長い時間をかけている理由のひとつとして、ユーザや開発者がなかなか新しいリリースについてこられないことを挙げている。
「Java SE 6がリリースされてもう大分経つが、未だにJ2SE 1.4を使っている企業がたくさんある。これらの企業では、使用しているアプリケーションサーバで特定のプラットフォームのみサポートするという契約を結んでいたりしている。新しいプラットフォームに移行するためには新たに契約を結び直して料金を払わなければならないわけだが、今現在動いているんだから新たにコストをかけたくはないということで、古いバージョンを使いつづける。まさに悲劇的な状況だね」
実際のリリース時期がいつになるのかは、Gosling氏は「あくまでも個人的な憶測」としながらも、ある程度のスペックが確定するのがおよそ6カ月後、したがって正式リリースは早くとも18カ月後くらいになるだろうと答えている。
Javaに代わる言語はまだ無い
前述のように、Gosling氏もスクリプト言語の持つパワーについては十分に認めている。しかし、「JavaはすでにCOBOLのようにレガシー化しつつあるとも言われている」という記者の質問に対しては、やや気色ばんだ表情で強く否定した。
「その表現は妥当ではないな。例えばRubyはウェブプレゼンテーションには優れているが、パフォーマンスやセキュリティに関しては十分ではない。エンタープライズや科学技術などの分野でJavaに取って代われる言語は無く、まだレガシーと言われるものではないよ」
学生やプログラミング初心者がこれから学ぶ第一言語としても、「どういうキャリアを目指すかによるが」と前置きしつつ、やはりJavaを強く推している。
「Javaは汎用的に広い範囲で使うことができる。これだけオールマイティな言語は他に見当たらない。特に物理や化学などを専攻する学生は、計算に優れたJavaを選ぶべきだと思う」
一方で個人的に興味を持っている言語としてはScalaやFortressを挙げている。その理由は数学的指向が強く科学演算に優れており、マルチコアのパワーを有効活用するのに向いているからだという。