第 6 课导言
本课开始探索通用运算符,并引入用 Racket 编写的 Racket-1 解释器。
引言
本课,我们将开始探索通用运算符(generic operators)——可以对不同数据类型进行调用的过程。通用运算符的基本思想是:我们拥有不同的数据类型,它们是”智能的”——知道如何操作自身。这样一来,过程就可以是”愚蠢的”——它们不需要了解数据类型,而一切照样能正常运转。
接下来,我们将介绍 Racket-1:一个用 Racket 编写的简单 Racket 解释器。它虽然不能做 Racket 能做的所有事情,但确实展示了构成一个解释器的基本组件。
预备知识
你应该已经很好地理解了 calc.rkt 和数据抽象。
阅读材料
本课的相关阅读材料如下:
- SICP 2.4
- SICP 2.5.1–2.5.2
- 课堂讲义(第 42 页起)