乐正

Actions speak louder than words.

Sicp-ex4-10

问题

通过数据抽象技术,我们就能够写出独立于被求值语言的特定语法形式的eval过程。为阐释这一点,请为Scheme设计和实现一种新的语法形式,请仅仅修改本节的有关过程,而不修改eval或者apply

解答

可以将各个特定类型表达式的eval函数保存在表中,等待相关函数的调用。比如,将eval-assignment修改成:

1
2
(define (eval-assignment exp env)
    ((get 'assignment) exp env))

类似的,eval-ifeval-sequence等都可以修改成这样的写法。

draft

« sicp-ex4-9 sicp-ex4-11 »

Comments