【发布时间】:2012-08-15 22:22:28
【问题描述】:
这是来自MIT 6.001 Online Tutor,它是第三个问题集的一部分。
问题:指出下列每个表达式的类型。如果需要类型变量,就使用A,B,C等,以A开头作为最左边的变量。
-
(lambda (x y) x)=A,B->A (lambda (p) (p 3))-
(lambda (p x) (p x))=(A->B), A->B (lambda (x y comp) (if (comp x y) x y))
如您所见,我解决了 1 和 3,但这主要是不走运。我仍然无法理解这个概念,这阻止了我解决 2 和 4。
讲座幻灯片可以在here找到(查看最后几张)。
【问题讨论】:
-
我实际上无法理解这个问题......他们不都是 lambdas 吗?首先,它们的数据类型有何不同?
-
是的,它们都是 lambda,这就是为什么你必须使用一般的 A、B、C 表示法而不是像 number->number 这样的东西。幻灯片在这里,这是处理此类问题的最后几张幻灯片。 link for slides