《两周自制脚本语言》以其独树一帜的教学方法,引领读者在轻松愉悦中逐步构建起对编译原理的深刻理解,本书巧妙地结合了理论与实践,通过与书中角色并肩作战,读者可以亲手打造出一个具备高级功能的编译器,对编程新手而言,这是一次难得的实战演练;对经验丰富的开发者来说,则是一场深层次的技能升华,书中所涉及的内容覆盖从基础概念到性能优化,再到实战解说,逐步深入,每一步都旨在巩固知识并启迪思维,读者不仅能够学习到编译原理的基本知识,更能通过实际动手实验理解语言设计的深层逻辑,这种由浅入深的学习方式,对于大中专院校学生来说,是理解抽象概念与复杂理论的一剂良方;对于希望建立坚实的编程及设计基础的专业人士,该书提供的案例和技巧同样价值连城。
本书是一本优秀的编译原理入门读物。全书穿插了大量轻松风趣的对话,读者可以随书中的人物一起从最简单的语言解释器开始,逐步添加新功能,最终完成一个支持函数、数组、对象等高级功能的语言编译器。本书与众不同的实现方式不仅大幅简化了语言处理器的复杂度,还有助于拓展读者的视野。适合对编译原理及语言处理器设计有兴趣的读者以及正在学习相关课程的大中专院校学生。同时,已经学习过相关知识、有一定经验的开发者,也一定能从本书新颖的实现方式中受益良多。
目录
- 第1部分 基础篇
- 第1天 来,我们一起做些什么吧 1
- 第2天 设计程序设计语言 10
- 第3天 分割单词 17
- 第4天 用于表示程序的对象 30
- 第5天 设计语法分析器 44
- 第6天 通过解释器执行程序 62
- 第7天 添加函数功能 75
- 第8天 关联Java语言 95
- 第9天 设计面向对象语言 101
- 第10天 无法割舍的数组 115
- 第2部分 性能优化篇
- 第11天 优化变量读写性能 123
- 第12天 优化对象操作性能 137
- 第13天 设计中间代码解释器 156
- 第14天 为Stone语言添加静态类型支持以优化性能 187
- 第3部分 解说篇(自习时间)
- 第15天 手工设计词法分析器 229
- 第16天 语法分析方式 236
- 第17天 Parser库的内部结构 251
- 第18天 GluonJ的使用方法 263
- 第19天 抽象语法树与设计模式 271