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)。
完整實現: