其实对照正文,我们可以看到“正则序”停止展开的条件是“只包含基本运算符的表达式”,而对于
(define (p) (p))
是无论如何也没法完全展开的,因为它会不断递归,所以“正则序”才会死循环。
而对于“应用序”的实现,则会这样展开
(test 0 (p))
(if (= 0 0) 0 (p))
(if #t 0 (p))
; 0
大哥,你这段话完全是前后矛盾啊!!!!!不是说了是正则序=0,应用序陷入循环么?
THX,那个1.5的练习我也找了好久才找到这里,每个人都说应用序的定义!!!可是我根本就看不懂!!!!