我想用 Lisp 方言实现 Lisp 解释器,主要是作为学习练习。我被抛弃的一件事是这个区域有多少选择。首先,我对了解一些已经存在了一段时间的 Lisp(比如 Scheme 或 Common Lisp)更感兴趣。我不想使用 Clojure 来执行此操作,因为我已经使用过它。 :-)
那么在解析方面,其中一种风格是否比其他风格更好?你认为在 Common Lisp 中实现 Scheme 是个好主意吗(反之亦然)?还是两者之间的差异足以让我失望?
如果它有任何不同,我想要跨平台的东西。我有一台 Windows PC、一台 Mac 和一台 Linux 机器,我最终可以在其中任何一台上写这篇文章。
最佳答案
有一些关于这个的书:
- SICP chapter 4 and 5
- PAIP , 第 5 章
- LiSP , 整本书解释了 Lisp 的实现
- Anatomy of Lisp ,关于实现 Lisp 的老经典
强烈推荐上述所有书籍,尽管《Lisp 剖析》比较陈旧,难以获得且难以阅读。
Scheme 和 Common Lisp 都适合您的任务。
实现 Common Lisp 是一项更大的任务,因为这种语言更大。通常一个人在 Common Lisp 中更好地实现了 Common Lisp,因为有一些 Common Lisp 库可以用于新的 Common Lisp 实现。 ;-)
关于parsing - 什么 Lisp 更擅长解析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1318729/