在练习1.5中,我正在阅读“计算机程序的结构和解释”第二版,我发现一个组合,我不知道它的确切作用(define (p) (p))
。
当我调用该过程时,(p)
我的光标在下一行中闪烁,而无法编写任何内容。
(define (p) (p))
(p)
Run Code Online (Sandbox Code Playgroud)
我不知道对这个过程有什么期望,因为我自己定义了它。
p
是没有参数的过程。它的身体是(p)
。在Scheme中,我们通过将过程及其参数括在方括号中来调用过程。鉴于p
没有参数,(p)
只需调用即可p
。哪个叫p
。哪个电话p
...等等。那怎么办呢?无限循环!仅此而已。