Uminchuの日記: 問題1.5と問題1.6
日記 by
Uminchu
問題1.5
最初に評価してしまうapplicative orderだと
(p)が無限ループに陥ってしまう。
normal orderだとyは評価されないから大丈夫
問題1.6
これも1.5と似たような現象。
ifが普通の手続きだと、再帰関数を評価してしまい
無限ループ化する。
前に、f(a)||f(b) (f(x)は副作用を持ち、boolを返す)
みたいな書き方をして、f(b)が実行されなくてはまったことが
あって、なんでこんな実装になっているんだと思ったことがあったが
applicative orderな処理系だと
こういう実装をしないと再帰関数のような処理がかけなくなって
しまうということか。
問題1.5と問題1.6 More ログイン