第 12 课 导言

本章介绍如何提升元循环求值器的效率,并说明改变求值器会如何改变语言的解释方式及其带来的优势。

导言

学到这里,你已经(原则上)知道如何在 Scheme 中编写一个 Scheme 解释器了。接下来,我们要做两件事:一是让元循环求值器(metacircular evaluator)更高效;二是看看改变元循环求值器会如何改变语言的解释方式,以及这样做能带来什么好处。具体来说,我们将构造两个新的求值器(evaluator)。第一个求值器把程序的语法分析(syntactic analysis,即分析程序要求做什么)与程序的执行(execution,即真正去做程序要求做的事)分离开来,以此提高效率。第二个求值器则把解释器从应用序(Applicative Order)改为正规序(Normal Order)。

预备知识与学习目标

你应当非常熟悉第 11 课的元循环求值器,本课的大量思想和代码都建立在它之上。

阅读材料

本课的相关阅读材料如下:

准备好了,就继续往下学吧!