SICP类型和变量

时间:2012-08-15 03:33:32

标签: scheme sicp

这来自MIT 6.001 Online Tutor,它是第三个问题集的一部分。

问题:指出以下每个表达式的类型。如果您需要类型变量,请使用A,B,C等,从A开始作为最左侧的变量。

  1. (lambda (x y) x) = A,B->A
  2. (lambda (p) (p 3))
  3. (lambda (p x) (p x)) = (A->B), A->B
  4. (lambda (x y comp) (if (comp x y) x y))
  5. 正如你所看到我解决了1和3,但那主要是运气不好。我仍然遇到理解这个概念的问题,这使我无法解决2和4。

    可以找到讲座幻灯片here(查看最后几篇)。

1 个答案:

答案 0 :(得分:2)

  1. A,B - > A
  2. (数字 - > A) - > A
  3. (A - > B),A - >乙
  4. A,A,(A,A - >布尔) - > A
  5. (最后一个假设xy是相同的类型)