好书推荐:《如何创造实用的、轻量级的语言》

Posted by envoy on September 1, 2018

本页中的部分信息翻译自Federico Tomassetti先生的网站,著作权归原作者所有。

学习如何构建程序设计语言

也许你正在尝试学习编写自己的语言。

多年前我也曾走过这条路。

很可能你像我一样因为这些因素感到挫败:

  • 教程过于偏向理论:我想看的代码在哪里?
  • 过时的资源:我很高兴看到这段代码在20年前的编译器上能够正常运行,但现在在我的机器上它无法编译。
  • 没有大局观:我能找到一些关于解析器和编译器的教程,但是我在哪里才能看到整个学习路线图?

推荐书籍:《如何创造实用的、轻量级的语言》

书籍封面

这本书解释了如何构建编程语言,它的目标是在实践中得出有用的东西:一门真正的的编程语言,具备高效的语法分析器和完整的编译器,和专用于该语言的编辑器,而不是玩具。

书中所用的方法基于开源组件的重用,将它们组装在一起,通过有限的精力获得真正的东西。你觉得构建语法分析器、解释器、编辑器和模拟器的任务不可能用少于1000行代码完成?再想一想。

当我学习构建语言的时候我很失望:我只能找到基础教程,而无法找到完整的、条理清晰的课程,引领我从入门到精通。而且,所有的方法都过于偏理论了:语言描述太多,代码太少。

关于作者

作者肖像

Federico Tomassetti是一名专门从事程序设计语言工程的顾问软件架构师:他构建语言、编辑器、语法分析器、编译器、解释器和模拟器。

他对软件开发有着疯狂的热情:自从8岁起就爱上了它,并且无时无刻不在思考着软件开发。他做了几件事:获得软件工程的博士学位,在意大利、德国、爱尔兰和法国从事研究工作,在见面会和科研会议上演讲,撰写论文,曾在猫途鹰和高朋工作。

书籍介绍

《如何创造实用的、轻量级的语言》详细介绍(英语)

学生优惠

作者为中国地区的学生准备了3折优惠价。如果你是学生,请点击以下链接购买(需自备梯子):

基础版(仅书籍)

标准版(书籍+代码)