6
Ÿ - Combinator的
我一直在努力學習繞Y - 組合子(上的解釋是可愛的,以及)從這個跨越一個例子來了。關於這個主題的深入解釋在Haskell或者Python中都是非常讚賞的。 Pleaaase! 如何使用Y- Combinator;爲什麼這個無限遞歸返回9?
代碼
fix :: (a -> a) -> a
fix f = f (fix f)
問題
調用的函數返回fix
時9
是fix
應用於(\x -> 9)
,我不知道爲什麼;當我沿着堆棧看時,我想象到了f(f ... (fix f) ...)
。
>> fix (\x -> 9)
>> 9