![]() |
Java Programming Language |
Java言語の主要アーキテクトであるGilad Bracha氏、Neal Gafter氏、James Gosling氏、Peter von der Ahe氏らは3年3ヶ月ほど前となる2006年8月18日(米国時間)、Java言語にクロージャの導入を提案するホワイトペーパを公開した。クロージャは開発者にときに熱狂的に支持される機能のひとつであるだけに、当時の開発者から高い関心を集めた。
Javaのクロージャには少なくとも4つの提案があった。Java 7での導入を目指して議論が進められたクロージャだったが、1年前の段階では複数ある候補に対してコンセンサスが得られないという理由で、Java 7でのクロージャの導入は難しいと発表があった。
しかし2009年11月に開催されたDevoxxカンファレンスにおいて、Sun MicrosystemsのエンジニアMark Reinhold氏から同社はJava 7にクロージャを統合するべく作業を開始するだろうという旨の発表があったと複数のブログやフォーラムが伝えている。Mark Reinhold氏は細粒度の並列コンピューティングフレームワーク「ForkJoinTasks」の開発に従事。これはプラットフォームに依存しない並列コンピューティングを提供するためのフレームワークで、任意の処理を並列化するスレッドと比べると、計算に特化した処理をマルチコアプロセッサで効率よく並列処理することを目指している。スレッドを置き換えるようなフレームワークではなく、計算処理に特化したパラレルコンピューティングフレームワークだ。
このあたりの事情はクロージャの提案者のひとりであるStephen Colebourne氏のブログClosures in JDK 7がわかりやすい。説明によればMark Reinhold氏の取り組んでいるForkJoinTasksをJavaで実現するには、4つの基本型をサポートするだけで80のインタフェースが必要になるという。カバー範囲を広げようとすればさらに多くのインタフェースが必要になるようだ。ForkJoinTasksで計算処理の並列化をするために80を超えるインタフェースから実装すべきインタフェースを選ぶというのは、開発にとって煩雑であるのみならず、Javaの内部を複雑にするという点でも好ましくない。
このように複雑にせずにForkJoinTasksを実現するにはクロージャが有効であり、これがゆえにJava 7にはクロージャを導入することになる、というわけだ。Stephen Colebourne氏はFCMクロージャの共同提案者の一人だが、Mark Reinhold氏の発表にあったクロージャを見る限りでは文法はFCMに近いものになっているということだ。
Java Community News - Java To Get Closures in JDK 7に掲載されている内容によれば、Stephen Colebourne氏はSunの態度の変更について、1年前の段階では経験が不足しているため決定打にかけたものの、1年間の調査を経てどのクロージャを採用すればいいのかがわかったのではないか、と説明。クロージャの仕様としてはBGGAが理論をそのまま実装したモデルとなるが、Javaで導入するには余分な機能があると判断されたのだろう説明がある。最終的にはどの仕様もベースとして採用されることはないようだが、Javaでの用途に適したクロージャの仕様が見えてきている状況にあるようだ。
Java 7の登場までにはまだ時間がある。Java 7の機能のひとつとして計算処理の並列高速化を取り込むのであれば、クロージャの導入も必然として実施されることになるようだ。実際にどういった仕様のクロージャが取り込まれるのか、そもそもJava 7で本当にクロージャが導入されるのかも含めて今度の動向が注目される。
| Java SE 5、サポート終了 [2009/11/5] |
| JDK7、追加するユーティリティメソッド募集 [2009/9/18] |
| Java開発者がSnow Leopardにアップグレードする理由 [2009/8/25] |
| Java、広い範囲のバージョンに脆弱性 [2009/8/6] |
Google、Chrome用拡張機能のギャラリー登録受け付け開始
【コラム】FileMaker×PHPで作る、簡単・便利なWebアプリ 第39回 API for PHPの中枢、FileMakerクラス(3)
| イプスイッチ、Windows環境の監視ツール「WhatsUp Gold」で日本語に対応 [15:33 5/28] |
| アイシンの最新安全運転システム - 車両周辺・後方障害物監視、わき見・居眠り判断 [10:30 5/28] |
| ラネクシー、画像処理ソフトウェア開発キットの最新版を64bit版で販売 [10:10 5/28] |
| 東陽テクニカ、1G/10GbE回線対応のポータブルネットワークアナライザ [09:57 5/28] |
| 日本発の取り組み「Mozilla Factory」がスタート [09:30 5/28] |
|
ギリシャの再選挙を控え、神経質な展開が見込まれるユーロ圏 [17:07 5/28] ライフ |
|
【連載】これだけは要チェック! TOEIC(R)単語帳 第111回 今回のお題は…「calm」 [17:00 5/28] キャリア |
|
【特別企画】最新4コアCore i7搭載ノートがついに6万円を切った!「LuvBook LB-F310X」 [17:00 5/28] パソコン |
|
【レビュー】さらにサクサク、高機能。名実ともにフラッグシップな「EXILIM EX-ZR300」 [16:50 5/28] 家電 |
|
サンコー、水深20mで使用可能なフルHD対応デジタルビデオカメラ [16:49 5/28] 家電 |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。