【问题标题】:How does Jan Willem Klop's "(L L L...)" Y combinator work?Jan Willem Klop 的“(L L L...)”Y 组合器是如何工作的?
【发布时间】:2010-09-11 19:06:52
【问题描述】:

我理解what a Y Combinator is,但我不理解这个来自Wikipedia page 的“新颖”组合子示例:

 Yk = (L L L L L L L L L L L L L L L L L L L L L L L L L)

在哪里:

    L = λabcdefghijklmnopqstuvwxyzr。 (r (t h i s i s a f i x e d p o i n t c o m b i n a t o r))

这是如何工作的?

【问题讨论】:

    标签: functional-programming lisp computer-science


    【解决方案1】:

    定点组合器C 的本质是C f 约简为f (C f)。只要这样做,您对C 采取什么并不重要。所以不是

    (\y f. f (y y f)) (\y f. f (y y f))
    

    你也可以拿

    (\y z f. f (y y y f)) (\y z f. f (y y y f)) (\y z f. f (y y y f))
    

    基本上你需要某种形式的东西

    C t1 t2 ... tN
    

    ti = C 的一些i

    C = \x1 x2 .. xN f. f (xi u1 u2 ... xi ... u(N-1) f)
    

    其他术语tjuj 实际上并未“使用”。你可以看到 Klop 的L 有这种形式(尽管他使用了所有ti 都是L 这样第二个xi 也可以是任何其他xj)。

    【讨论】:

      猜你喜欢
      • 2017-12-26
      • 1970-01-01
      • 2019-07-09
      • 2013-05-04
      • 1970-01-01
      • 1970-01-01
      • 2020-01-22
      • 2018-09-09
      • 1970-01-01
      相关资源
      最近更新 更多