我最近偶然發現了this article,它描述瞭如何在Ruby中僅使用Procs編寫FizzBuzz,並且自從我感到無聊以來,認爲它會很好地嘗試和實現Python中使用lambda表達式的同一件事。 我到您創建使用嵌套函數的數字部分,並寫了下面的Python腳本: #!/usr/bin/env python
zero = lambda p : (lambda x: x)
one = l
考慮這個組合子: S (S K)
它應用到的參數XY: S (S K) X Y
它收縮到: X Y
我將S(SK)轉換爲相應的Lambda條款並得到了如下結果: (\x y -> x y)
我用哈斯克爾WinGHCi工具來獲得(\ x和y - > x和y)的類型簽名,它返回: (t1 -> t) -> t1 -> t
這對我來說很有意義。 接下來,我用WinGHCi得到S(S