Build Your Own Lisp
用 C 语言构建你自己的 Lisp 解释器
从零开始,学习 C 语言的同时编写一个完整的编程语言
Introduction · 关于本书
为什么读这本书
在本书中,你将在学习 C 语言的同时学会编写你自己的编程语言——一个 1000 行左右代码的简单 Lisp。这不仅仅是一本关于 C 语言的教程,也不仅仅是一本关于编程语言理论的书。它是一本通过实践来学习的指南,让你在构建真实项目的过程中掌握底层编程的精髓。
很多人非常想学习 C 语言,但却无从下手。现在大可不必担心了。如果你能坚持看完本书,我敢保证,至少你将拥有一个非常酷的新语言可以把玩,说不定还能成为一个熟练的 C 程序员呢!
项目信息
原作者:Daniel Holden (contact@theorangeduck.com)
原书地址:buildyourownlisp.com
中文翻译:KSCO (GitHub)
共享协议:CC BY-NC-SA 3.0
📚 章节目录
- 01 介绍 — 这本书是给谁看的 ✓ 已整理
- 02 安装 — 搭建开发环境 ✓ 已整理
- 03 基础 — C 语言快速入门 ✓ 已整理
- 04 交互 — REPL 与交互提示 ✓ 已整理
- 05 编程语言 — 语法与解析器 ✓ 已整理
- 06 语法分析 — 波兰表达式与 mpc ✓ 已整理
- 07 计算 — 递归求值 ✓ 已整理
- 08 错误处理 — 类型系统与错误报告 ✓ 已整理
- 09 S-表达式 — 指针、堆栈与递归数据结构 ✓ 已整理
- 10 Q-表达式 — 引用与列表操作 ✓ 已整理
- 11 变量 — 环境与符号定义 ✓ 已整理
- 12 函数 — Lambda 与闭包 ✓ 已整理
- 13 条件分支 — 比较与逻辑运算 ✓ 已整理
- 14 字符串 — 字符串操作 ✓ 已整理
- 15 标准库 — 内置函数 ✓ 已整理
- 16 彩蛋 — 扩展项目 ✓ 已整理
- 17 附录 — 特别感谢 ✓ 已整理
🗺️ 学习路径
路径一:C 语言基础
路径二:直接上手
🔑 核心概念
抽象语法树 (AST)
递归求值
S-表达式
环境与作用域
📖 相关资源
相关文章