「ついにJavaにもクロージャ?」

現在、Javaには関数型やクロージャは用意されていない。同氏らの提案ではJDK7を目処にこれら機能を統合していきたいとしている。

クロージャはまだいいとしても、「関数型」ってなんじゃろ。関数がファーストクラスオブジェクトになるってこと?それならクロージャだけでいいよな。といきなりわけがわからなかったので読んでみた。

ああー、「関数型」って文字通り関数の「型」か。クロージャの型ってことか。C#のデリゲードまわりと似たような話なんかな。んーしかしどうなんだろ。C#のデリゲートみたいにイベントハンドラに特化した導入*1ならともかく、今のJavaに「クロージャ」を導入した、といってもあまり嬉しさがないような。
クロージャが一番威力を発揮するのは、汎用的な高階関数群が整備されている環境の上だと思うんだけど、Javaだと汎用的な処理(例えばソートとか、ループとか)ってがっちりしたオブジェクト指向なライブラリ群であらかた実現されてるよね?
高階関数的にも使えるようにそれらのライブラリを拡張するんだろうか?別に作るんだろうか?そのへんの組合せはどうつじつま合わせるんだろうか?単にインターフェイス+匿名クラスの置き換えだとしたらこんなつまらん話はないな。Ocamlでも使えばいいのに。←いいすぎ

*1:詳しく知らないけど、昔C#をざっと眺めた時にはそんな雰囲気に思えた