Mae向きなブログ

Mae向きな情報発信を続けていきたいと思います。

13章分の12章

プログラミングHaskell』の12章を読みました。

第12章 遅延評価

どの節も非常に興味深い内容です。「12.1 導入」から少しずつ,着実に,面白く「12.6 部品プログラミング」へ向けて流れていく感じでした。
今まで,遅延評価とは,「評価を先延ばしにする」とか「引数は本当に必要になって初めて評価される」という認識はあったのですが,本章を読んで,初めて,「遅延評価とは,ポインターによる共有を用いた名前渡し*1である」という認識を持ちました。
練習問題の中に,フィボナッチ数の無限リストを生成する関数を実装する問題がありました。以前,Schemeで取り組んでいたこともあり解くことができました。当時は,とても不思議で理解不可能だと思えたのですが,一回理解すると,それが当然のように思えるのが不思議です。

*1:最外簡約