Home
My Books
Browse ▾
Recommendations
Choice Awards
Genres
Giveaways
New Releases
Lists
Explore
News & Interviews
Loading...
Community ▾
Groups
Quotes
Ask the Author
People
Sign in
Join
Jump to ratings and reviews
Want to Read
Buy on Amazon
Rate this book
Programming language to achieve mode
Terence Parr LI YUAN KUI YI
0.00
0 ratings
0 reviews
Want to Read
Buy on Amazon
Rate this book
《编程语言实现模式》旨在传授开发语言应用(工具)的经验和理念,帮助读者构建自己的语言应用。这里的语言应用并非特指用编译器或解释器实现编程语言,而是泛指任何处理、分析、翻译输入文件的程序,比如配置文件读取器、数据读取器、模型驱动的代码生成器、源码到源码的翻译器、源码分析工具、解释器,以及诸如此类的工具。为此,作者举例讲解已有语言应用的工作机制,拆解、归纳出31种易于理解且常用的设计模式(每种都包括通用数据结构、算法、策略)。虽然示例是用Java编写的,但相信读者可以触类旁通,利用这些设计模式构建针对其他编程语言(既包括特定领域语言,也包括通用编程语言)的应用。虽然《编程语言实现模式》不专门讨论如何设计编程语言,但读者在阅读的过程中将吸收丰富的相关知识。比较不同编程语言的特点、了解编程语言的发展历史是学习设计编程语言的好途径。第1部分读取输入第1章初探语言应用1.1大局观1.2模式概览1.3深入浅出语言应用1.4为语言应用选择合适的模式第2章基本解析模式2.1识别式子的结构2.2构建递归下降语法解析器2.3使用文法DSL来构建语法解析器2.4词法单元和句子第3章高阶解析模式3.1利用任意多的向前看符号进行解析3.2记忆式解析3.3采用语义信息指导解析过程第2部分分析输入第4章从语法树构建中间表示4.1为什么要构建树4.2构建抽象语法树4.3简要介绍ANTLR4.4使用ANTLR文法构建AST第5章遍历并改写树形结构5.1遍历树以及访问顺序5.2封装访问节点的代码5.3根据文法自动生成访问者5.4将遍历与匹配解耦第6章记录并识别程序中的符号6.1收集程序实体的信息6.2根据作用域划分符号6.3解析符号第7章管理数据聚集的符号表7.1为结构体构建作用域树7.2为类构建作用域树第8章静态类型检查第3部分解释执行第9章构建高级解释器9.1高级解释器存储系统的设计9.2高级解释器中的符号记录9.3处理指令第10章构建字节码解释器10.1设计字节码解释器10.2定义汇编语言语法10.3字节码机器的架构10.4如何深入第4部分生成输出第11章语言的翻译11.1语法制导的翻译11.2基于规则的翻译11.3模型驱动的翻译11.4创建嵌套的输出模型第12章使用模板生成DSL12.1熟悉StringTemplate12.2StringTemplate的性质12.2从一个简单的输入模型生成模板12.4在输入模型不同的情况下复用模板12.5使用树文法来创建模板12.6对数据列表使用模板12.7编写可改变输出结果的翻译器第13章知识汇总13.1在蛋白质结构中查找模式13.2使用脚本构建三维场景13.3处理XML13.4读取通用的配置文件13.5对代码进行微调13.6为Java添加新的类型13.7美化源代码13.8编译为机器码参考文献索引别看那些编译原理的书了!这本书教你编写真正实用的解析器、翻译器、解释器等语言应用,TerenceParr在书中细致地讲解了先进的语言工具和语言应用中设计模式的用法。无论是编写自己的领域专用语言(DSL),还是挖掘已有代码、查错或是寻宝,都能从这本简单易懂的书中找到示例和模式,因为它基本上覆盖了解析技术的方方面面。——
Paperback
Published April 1, 2012
Book details & editions
About the author
Terence Parr LI YUAN KUI YI
Follow
Follow
Ratings
&
Reviews
What do
you
think?
Rate this book
Write a Review
Friends
&
Following
Create a free account
to discover what your friends think of this book!
Community Reviews
0.00
0 ratings
0 reviews
5 stars
0 (0%)
4 stars
0 (0%)
3 stars
0 (0%)
2 stars
0 (0%)
1 star
0 (0%)
Search review text
Filters
No one has reviewed this book yet.
Join the discussion
Add
a quote
Start
a discussion
Ask
a question
Can't find what you're looking for?
Get help and learn more about the design.
Help center