ESC
输入关键词搜索文章
目录

彩蛋

Build Your Own Lisp · 第 16 章
扩展项目的想法,帮助你进一步完善你的 Lisp
Chapter 16 · 彩蛋
扩展项目

章节信息

原书章节:第 16 章 Bonus Projects

中文翻译KSCO (GitHub)

原书地址buildyourownlisp.com

恭喜!

恭喜你!你已经成功构建了自己的 Lisp 解释器。这是一个了不起的成就。你现在拥有了一门功能完整的编程语言,它支持:

  • 变量和函数定义
  • Lambda 表达式和闭包
  • 条件分支和循环
  • 字符串和列表操作
  • 数学运算和比较运算

但这只是开始!以下是一些扩展项目的想法,可以帮助你进一步完善你的 Lisp。

扩展项目

操作系统交互

添加与操作系统交互的功能:

  • 文件读写操作
  • 执行系统命令
  • 环境变量访问
  • 目录操作

数据结构

添加更多的数据结构:

  • 哈希表(关联数组)
  • 数组
  • 集合
  • 树结构

编程特性

添加更多的编程特性:

  • 异常处理(try/catch)
  • 宏系统
  • 模块系统
  • 面向对象编程

性能优化

优化解释器的性能:

  • 垃圾回收
  • 尾调用优化
  • 字节码编译
  • JIT 编译
学习资源

如果你想继续学习编程语言理论和实现,以下是一些推荐的资源:

推荐书籍

  • Structure and Interpretation of Computer Programs (SICP):经典的计算机科学教材
  • Writing An Interpreter In Go:用 Go 语言实现解释器
  • Crafting Interpreters:解释器实现的权威指南
  • Lisp in Small Pieces:深入理解 Lisp 实现

在线资源

复习速查

  • 已实现功能:变量、函数、Lambda、闭包、条件、循环、字符串、列表
  • 扩展方向:操作系统交互、数据结构、编程特性、性能优化
  • 学习资源:SICP、Crafting Interpreters、Lisp in Small Pieces