首页>参考读物>计算机科学与技术>软件与程序设计

自己动手构建编程语言:如何设计编译器、解释器和DSL
作者 : [美]克林顿·L.杰弗瑞(Clinton L. Jeffery) 著
译者 : 李刚强 文家焱 译
丛书名 : 程序员书库
出版日期 : 2023-11-15
ISBN : 978-7-111-73821-3
定价 : 129.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 :
开本 : 16
原书名 : Build Your Own Programming Language
原出版社: Packt Publishing Ltd.
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

本书主要研究如何构建一种新的编程语言。书中将介绍编程语言设计方面的主题,并重点介绍编程语言实现。本书的新颖之处在于将传统的编译器-编译器工具(Flex和BYACC)与两种更高级的实现语言融合。一种非常高级的语言(Unicon)可以像黄油一样穿透编译器的数据结构和算法,而另一种主流的现代语言(Java)则展示了如何在更典型的生产环境中实现相同的代码。
本书主要面向对发明编程语言或开发领域特定语言感兴趣的软件开发人员。学习编译器构建课程的计算机科学相关专业学生也会发现这本书非常适合作为语言实现的实用指南,可以为理论教材提供有益补充。

图书特色

Unicon语言之父撰写,一本书讲透如何从零开始构建自己的编程语言
解构编译器的底层逻辑,缩短开发时间并解决应用领域中的痛点

上架指导

计算机\编译

封底文字

对不同类型计算机语言的需求正在迅速增长,开发人员更喜欢创建领域特定语言来解决特定的应用程序领域问题。虽然构建自己的编程语言可以解决不断增长的软件规模和复杂性问题,但这并不容易。
本书融合作者构建Unicon编程语言的经验,全面系统地阐述了编程语言的设计与实现。书中既涵盖语法树的一系列遍历、字节码虚拟机的代码生成,又介绍了如何通过内置于语言中的操作符和函数(而不是库函数)来很好地表示领域特定语言的特性,并且展示了如何实现垃圾收集,包括引用计数和标记-清理垃圾收集。在整本书中,作者提供了基于Unicon和Java的相关示例,以帮助读者更好地理解概念的上下文并掌握相关技术和方法。
学完本书,读者将能够构建和部署自己的领域特定语言,并编译和运行程序。
阅读完本书,读者将能够:
对新语言进行需求分析,并设计语言语法和语义;
为常用表达式和控制结构编写词法和上下文无关的文法规则;
开发一个读取源代码的扫描器,并生成一个检查语法的解析器;
在编译器中构建关键数据结构,并使用编译器构建语法着色代码编辑器;
实现一个字节码解释器,并运行由编译器生成的字节码;
编写将信息插入语法树的树遍历;
用自己的语言实现垃圾收集。

作者简介

[美]克林顿·L.杰弗瑞(Clinton L. Jeffery) 著:Clinton L. Jeffery是New Mexico Institute of Mining and Technology计算机科学与工程系的教授和系主任。他在华盛顿大学获得计算机科学学士学位,在亚利桑那大学获得计算机科学硕士和博士学位。他主要从事编程语言、程序监控、调试、图形、虚拟环境和可视化方面的研究,并撰写了许多相关书籍和论文。他与同事一起发明了Unicon编程语言,该语言在Unicon网站上托管。

图书目录

教学资源推荐
作者: 朱鸣华 罗晓芳 董明 孟军 汪德刚 编著
作者: 刘博 董学文 等编著
作者: 马玉春 李壮 张鲲 黄应红 编著
参考读物推荐
作者: [美] 彼得 J.琼斯( Peter J. Jones)著
作者: 李欣 等编著
作者: [美] 马克·米凯利斯(Mark Michaelis) 著