1.深浅出,触核心 理解Go语言语法树的工作原理,提升编程技艺,学习编译器的原理与实现,编写更效率的代码;通过理解简单的“凹语言”,深刻理解Go语言特性,获得自制一门编程语言的启发。 2.内容针对性与专业性强 本书面向已经熟练掌握 Go 语言并在行项目发的程序员,也适合想深了解 Go 语言底层运行机制的程序员阅读,同时可作为对编程语言/编译器有兴趣并想行实际项目实践的程序员的参考书。
售 价:¥
纸质售价:¥63.10购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
版 权
内容提要
序 一
序 二
序 三
前 言
资源与支持
第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 小结
后 记
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜