小编Dmi*_*rii的帖子

Scheme中lambda表达式的评估顺序

Dr. Racket用户.

这有两个表达式:

((lambda(x)(+ x 1))3)

((lambda(x)(+ x 1)2)3)

第一个是lambda表达式,它接受一个输入并将其增加1.因此它需要3作为其操作数并使(lambda(3)(+ 3 1)等于4.

第二个对我来说非常模棱两可,因为它评估为2,我无法理解其评估的顺序.我知道它必须用括号改变顺序,但我无法理解.显然它甚至没有将"1"和"x"加起来只是出于某种原因产生2作为输出.我错过了对评估的一些基本了解.提前致谢!

lambda scheme brackets racket

2
推荐指数
1
解决办法
513
查看次数

标签 统计

brackets ×1

lambda ×1

racket ×1

scheme ×1