関数プログラミング実践入門 ──簡潔で、正しいコードを書くために (WEB+DB PRESS plus)

本日読了。

関数型プログラミングという、手続き型、オブジェクト思考に続くパラダイムの説明。
関数型プログラミング言語とは、関数が第1級の対象となっている言語のこと。実行時に生成できたり、関数の引数や結果にできたりといった感じで、これまでの言語の変数と同様に使える。古くはLisp
本書ではHaskellを使って、関数型プログラミングについて紹介する。変数の値を変えてはいけないという、不思議な制約を持つ。モナドというしくみで制約を多少ゆるめられるらしいが。トップダウン型に設計ができて、マルチプロセスに強いという特徴があるが、実態としてはそこまでではなさそう。これまでの言語でループを作るところは、再帰にする。
全体的に難解。