Venkat Subramaniam『Javaによる関数型プログラミング ―Java 8ラムダ式とStream 』
Javaによる関数型プログラミング ―Java 8ラムダ式とStream
- 作者: Venkat Subramaniam,株式会社プログラミングシステム社
- 出版社/メーカー: オライリージャパン
- 発売日: 2014/10/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Java8で追加された(擬似)関数型プログラミングのAPIを、各種利用ケースごとに取り上げて説明してくれる。
このAPIの導入は大きなメリットともに、ある種の曖昧性も伴うものであり、チェック例外に関連する煩雑性やリスクも生じさせる。それらについて、丁寧に説明をしてくれている点はありがたい。
それにしてもJava8についてだが、末尾再帰のチャプターを読んでいて、はやくもこのバージョンにおける限界を見てしまった感を禁じ得ない…。
また上述の例外のハンドリングに関する部分では、関数型プログラミングであればEitherが使用され──計算の入力も出力もEitherとすることで、「失敗するかもしれない計算」「前段ですでに失敗しているかもしれない計算」を表現できたものだが、管見の限りJava8のAPIにはそれらしいものが見つからない。これもちょっと残念なところだった。