在阅读这篇关于 Y-combinator 的文章(我强烈推荐)时,我偶然发现了这种转换:
(define Y
(lambda (f)
((lambda (x) (x x))
(lambda (x) (f (x x))))))
Note that we can apply the inner lambda expression to its argument to get an equivalent version of Y:
(define Y
(lambda (f)
((lambda (x) (f (x x)))
(lambda (x) (f (x x))))))
有人可以解释一下我们是如何获得第二个版本的 Y 的吗?我们遵循了哪些步骤来实现目标?