编程语言实现模式
《编程语言实现模式》
基本信息
作者:TerenceParr[作译者介绍]
出版社:华中科技大学出版社
ISBN:9787560977003
上架时间:2012-3-16
出版日期:2012年3月
开本:16开
页码:388
版次:1-1
所属分类: 计算机 > 软件与程序设计 > 汇编语言/编译原理 > 汇编语言程序设计更多详细内容》》》编程语言实现模式
内容简介
计算机书籍
本书旨在传授开发语言应用(工具)的经验和理念,帮助读者构建自己的语言应用。这里的语言应用并非特指用编译器或解释器实现编程语言,而是泛指任何处理、分析、翻译输入文件的程序,比如配置文件读取器、数据读取器、模型驱动的代码生成器、源码到源码的翻译器、源码分析工具、解释器,以及诸如此类的工具。为此,作者举例讲解已有语言应用的工作机制,拆解、归纳出31种易于理解且常用的设计模式(每种都包括通用数据结构、算法、策略)。虽然示例是用Java编写的,但相信读者可以触类旁通,利用这些设计模式构建针对其他编程语言(既包括特定领域语言,也包括通用编程语言)的应用。
目录
第1章初探语言应用3
1.1大局观3
1.2模式概览5
1.3深入浅出语言应用9
1.4为语言应用选择合适的模式17
第2章基本解析模式21
2.1识别式子的结构22
2.2构建递归下降语法解析器24
2.3使用文法dsl来构建语法解析器26
2.4词法单元和句子27
第3章高阶解析模式49
3.1利用任意多的向前看符号进行解析50
3.2记忆式解析52
3.3采用语义信息指导解析过程52
第2部分分析输入
第4章从语法树构建中间表示73
4.1为什么要构建树75
4.2构建抽象语法树77
4.3简要介绍antlr84
4.4使用antlr文法构建ast86
第5章遍历并改写树形结构101
5.1遍历树以及访问顺序102
5.2封装访问节点的代码105
5.3根据文法自动生成访问者107
5.4将遍历与匹配解耦110
第6章记录并识别程序中的符号131
6.1收集程序实体的信息132
6.2根据作用域划分符号134
6.3解析符号139
第7章管理数据聚集的符号表155
7.1为结构体构建作用域树156
7.2为类构建作用域树158
第8章静态类型检查181
第3部分解释执行
第9章构建高级解释器219
9.1高级解释器存储系统的设计220
9.2高级解释器中的符号记录222
9.3处理指令224
第10章构建字节码解释器239
10.1设计字节码解释器241
10.2定义汇编语言语法243
10.3字节码机器的架构245
10.4如何深入250
第4部分生成输出
第11章语言的翻译278
11.1语法制导的翻译280
11.2基于规则的翻译281
11.3模型驱动的翻译283
11.4创建嵌套的输出模型291
第12章使用模板生成dsl312
12.1熟悉stringtemlate313
12.2stringtemlate的性质316
12.2从一个简单的输入模型生成模板317
12.4在输入模型不同的情况下复用模板320
12.5使用树文法来创建模板323
12.6对数据列表使用模板330
12.7编写可改变输出结果的翻译器336
第13章知识汇总348
13.1在蛋白质结构中查找模式348
13.2使用脚本构建三维场景349
13.3处理xml350
13.4读取通用的配置文件352
13.5对代码进行微调353
13.6为java添加新的类型354
13.7美化源代码355
13.8编译为机器码356
参考文献359
索引361
本图书来源于》》》中国互动出版网