展开全部

主编推荐语

编程语言定制指南:剖析Go语言底层运行机制,学习编译器原理,提升编程技艺,教你自制编程语言。

内容简介

Go语言语法树是Go语言源文件的另一种语义等价的表现形式,Go语言自带的go fmt 和go doc等命令都是建立在Go语言语法树基础之上的分析工具。

本书从Go语言语法树出发,重新审视Go语言源文件,阐述定制Go语言的核心技术。

书中通过对go/ast、go/ssa 等包的分析,一步步深入Go语言核心,最后简要介绍LLVM,读者可以结合IIVM和Go语言语法树按需定制,创造一个语法与Go语言语法头似的简单的编程语言及与其对应的编译器,达到掌握自制编程语言和编译器的目的。

本书面向已经熟练掌握Go语言并在进行项目开发的程序员,也适合想深入了解Go语言底层运行机制的程序员阅读,同时可作为对编程语言/编译器有兴趣并想进行实际项目实践的程序员的参考书。

目录

  • 版权信息
  • 内容提要
  • 序一
  • 序二
  • 序三
  • 前言
  • 资源与支持
  • 第1章 词法单元
  • 1.1 词法单元简介
  • 1.2 表示词法单元的数据类型
  • 1.3 FileSet和File
  • 1.4 解析词法单元
  • 1.5 位置信息
  • 1.6 小结
  • 第2章 基础字面值
  • 2.1 基础字面值的定义
  • 2.2 基础字面值的语法树结构
  • 2.3 构造基础字面值
  • 2.4 解析基础字面值
  • 2.5 标识符字面值
  • 2.6 小结
  • 第3章 基础表达式
  • 3.1 语法规范
  • 3.2 解析表达式
  • 3.3 求值表达式
  • 3.4 标识符:为表达式引入变量
  • 3.5 小结
  • 第4章 代码结构
  • 4.1 目录结构和包结构
  • 4.2 文件结构
  • 4.3 诊断语法树
  • 4.4 小结
  • 第5章 通用声明
  • 5.1 导入声明
  • 5.2 类型声明
  • 5.3 常量声明
  • 5.4 变量声明
  • 5.5 声明分组
  • 5.6 小结
  • 第6章 函数声明
  • 6.1 语法规范
  • 6.2 函数声明和方法声明
  • 6.3 参数列表和返回值列表
  • 6.4 小结
  • 第7章 复合类型
  • 7.1 语法规范
  • 7.2 基础类型
  • 7.3 指针类型
  • 7.4 数组类型
  • 7.5 切片类型
  • 7.6 结构体类型
  • 7.7 映射类型
  • 7.8 管道类型
  • 7.9 函数类型
  • 7.10 接口类型
  • 7.11 小结
  • 第8章 更复杂的字面值
  • 8.1 语法规范
  • 8.2 函数字面值
  • 8.3 复合字面值的语法
  • 8.4 数组字面值和切片字面值
  • 8.5 结构体字面值
  • 8.6 映射字面值
  • 8.7 小结
  • 第9章 复合表达式
  • 9.1 表达式语法
  • 9.2 类型转换和函数调用
  • 9.3 点选择运算
  • 9.4 索引运算
  • 9.5 切片运算
  • 9.6 类型断言
  • 9.7 小结
  • 第10章 语句块和语句
  • 10.1 语法规范
  • 10.2 空语句块
  • 10.3 表达式语句
  • 10.4 返回语句
  • 10.5 声明语句
  • 10.6 短声明语句和多赋值语句
  • 10.7 if/else分支语句
  • 10.8 for循环
  • 10.9 类型断言
  • 10.10 go语句和defer语句
  • 10.11 小结
  • 第11章 类型检查
  • 11.1 语义错误
  • 11.2 go/types包
  • 11.3 跨包的类型检查
  • 11.4 小结
  • 第12章 语义信息
  • 12.1 名字空间
  • 12.2 整体架构
  • 12.3 小结
  • 第13章 静态单赋值形式
  • 13.1 静态单赋值简介
  • 13.2 生成静态单赋值
  • 13.3 静态单赋值解释执行
  • 13.4 go/ssa包的架构
  • 13.5 小结
  • 第14章 凹语言
  • 14.1 Hello,凹语言
  • 14.2 访问全局变量
  • 14.3 调用自定义函数
  • 14.4 四则运算
  • 14.5 分支控制
  • 14.6 导入函数
  • 14.7 小结
  • 第15章 LLVM简介
  • 15.1 背景介绍
  • 15.2 安装LLVM
  • 15.3 printf函数
  • 15.4 简单的四则运算
  • 15.5 比较运算
  • 15.6 分支与循环
  • 15.7 基本块
  • 15.8 PHI指令
  • 15.9 有限循环
  • 15.10 小结
  • 第16章 LLVM示例
  • 16.1 W语言
  • 16.2 W语言编译器wcc的设计
  • 16.3 W语言编译器wcc的实现
  • 16.4 W语言的代码示例
  • 16.5 小结
  • 后记
  • 版权声明
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。