1.5 Ben Bitdiddle发明了一种检测解释器究竟采用哪种顺序求值的方法,应用序还是正则序:
上面的过程p,我稍稍做了修改,因为我的解释器(DrScheme)不能够定义没有参数的过程,下面解释这如何根据表达式:
(test 0 (p 1))
的结果,判断解释器的求值顺序。
如果解释器采用正则序,那么(test 0 (p 1))执行过程是:
如果解释器采用应用顺序,表达式执行过程为:
练习1.11
(1)采用递归计算f的过程为:
(2)采用迭代计算过程: