微型Lisp解释器的构造与实现

本网站不提供下载链接,喜欢看书的朋友请关注公众号:【lennylee的碎碎念】(lennyleede),首页回复:授人以渔,自动获取搜索资源的方法。

内容简介:

CSDN副总裁、《编程之美》《构建之法》作者邹欣老师作序推荐

.

从零开始,将Haskell的Parsec解释器移植到Java和Scala,并通过详细的程序实例,深入浅出地介绍了组合子逻辑这个函数式编程的基本范式,给读者展示了Parsec组合子的原理、实现和应用。阅读本书,读者不但可以掌握Parsec解释器的实现方法,而且可以加深对Parsec组合子的理解。本书也可以作为学习Java和Scala编程语言的补充教材。

.

 利用组合子逻辑实现简单的Lisp解释器

 将Haskell的Parsec解释器移植到Scala和Java

 示例代码分为Java和Scala两个版本

 学习Parsec解释器的原理、实现和应用

作者简介:

前言 1
第1章 环境准备
1.1 准备Java开发环境 4
1.2 准备Scala开发环境 6
1.3 JISP项目 6
1.4 SISP项目 7
第2章 开始构建简单的解释器
2.1 Hello REPL 10
2.2 Read Print Loop 13
2.3 算术表达式 14
第3章 数值解析
3.1 回顾 21
3.2 识别数值 24
3.3 前缀表达式 28
3.4 表达式求值 29
第4章 文本解析
4.1 文本和文本字面量 50
4.2 转义字符——在字符串中包含字符串 51
4.3 整合解释器 57
第5章 解释器环境
5.1 命名作用域 59
5.2 变量定义 62
5.3 “不可变”命名 70
第6章 语句块和结构化编程
6.1 do 74
6.2 let 78
第7章 逻辑运算和比较运算
7.1 逻辑判定true?和false? 86
7.2 比较运算 95
第8章 逻辑分支
8.1 if的实现 106
8.2 cond的实现 112
第9章 定义函数
9.1 具名函数和匿名函数 120
9.2 递归与循环 124
9.3 静态绑定、动态绑定与闭包 134
第10章 List和Quote
10.1 Quote 148
10.2 宏和宏编程 154
10.3 LIST 156
10.4 工具函数 158
第11章 内置函数和解释器模块 177
第12章 Parsec的原理和组成
12.1 状态管理 183
12.2 算子 191
随书代码 225
后记 226
· · · · · · (收起)

原文摘录: