軽い気持ちでScalaの勉強を始めたんだけど、"モナド"
という魔法の言葉が出てきた。
調べれば調べるほどに"モナド"
というものが分からなくて(笑)、そんな時に何かのレビューで、「恐らくこの本が一番初心者に分かりやすくモナドの懸念を解説してる」というのを見て購入。
Haskell本はオライリーのReal World Haskell
を以前少しだけ読んだことはあった。けど、関数型プログラミングの懸念は全然理解できていない。
そして、本書はその名の通り、すごい言語との出会いを与えてくれた書籍でした。
もうリストのパターンマッチの解説辺りからHaskellの虜になってしまいました。AtCoderもHaskellで練習しています笑
リンク
良かった点
- ポップな語り口調ですいすい読めます。
- 短いコード片を実際に書いていくことでHaskellの言語を自然と理解していける。
- 関数の定義から始まってパターンマッチ、型クラス、ファンクター、モナドまで自然とステップアップしながら学習できる。
- 関数型特有のコンテキストや副作用といった懸念の理解が深まった。
- 苦手だった再帰に少しは抵抗がなくなった!(再帰は配列のheadとtailで分けて考える。みたいな)
- これ読んだ後はScalaや他の関数型プログラミングの書籍、記事の理解が深まる。
イマイチな点
- 新しい知識に触れるのが楽しくて、少し長い写経が始まるとダルく感じた(笑)
特にファンクターからモナドまでは何度も読み直したい(^_^)
リンク