Peter Norvig的最新博文(How to Write a (Lisp) Interpreter (in Python))和(An ((Even Better) Lisp) Interpreter (in Python))用寥寥数笔就勾勒出一个Lisp解释器的轮廓,先膜拜一下Orz
Peter大神很喜欢Python,但我不熟,很多看不懂,还好有个哥们写了个Ruby版,这就好懂多了。
- 目标语言,当然是简单而强大的Lisp了。
- 解释器工作机制:先把代码作为字符串拆分成token,再分析token序列转换成解析树,最后交给执行单元。
- 还有一个重要的东西,环境(environment)。
完整实现: