自己动手实现Lua:虚拟机、编译器和标准库 pdf
本书是一本面向Lua程序员和脚本语言爱好者的语言自制指南和实战宝典。
全书将带给读者3个维度的收获:
维度1:深入理解Lua语言本身作者融合自己丰富的工程实践经验,详细阐述了Lua语言的核心语法和实现原理,深入探讨了Lua虚拟机、编译器和标准库的实现,并给出了实际可以编译执行的代码。
维度2:从零开始实现一门脚本语言本书以Lua语言为例,系统、完整地(涵盖虚拟机、编译器和标准库)讲解了如何零基础编写一门脚本语言,帮助读者彻底理解脚本语言的工作原理。
维度3:提升Go和Java语言编程能力本书分别用Go语言和Java语言来实现Lua,包含大量对Go和Java的使用,有很多巧妙的设计,能帮助读者提升Go和Java的编程能力。
全书共21章,分为3个部分:
第一部分(第1-13章)主要讲解LuaAPI和虚拟机的实现,包括二进制chunk格式、Lua虚拟机指令集、元编程、错误处理等。
第二部分(第14-17章)主要讨论Lua语法和编译器的实现,包括词法分析、语法分析、代码优化、代码生成等。
第三部分(第18-21章)主要讲解Lua辅助API和标准库实现,包括基础库、实用工具库、包和模块、协程等。
作者简介:
张秀宏 服务器开发工程师,有多年的Java和游戏服务器开发和架构经验,对高级语言虚拟机有非常深入的研究。
曾在EA、乐元素等游戏公司担任高级服务器工程师,现任某创业公司架构师。
曾于2016年6月出版《自己动手写Java虚拟机》一书,广受读者好评,并多次重印。
《自己动手实现Lua:
虚拟机、编译器、标准库》是他时隔两年之后推出的又一力作。
目录:
第1章 准备工作
第2章 二进制chunk
第3章 指令集
第4章 Lua API
第5章 Lua运算符
第6章 虚拟机雏形
第7章 表
第8章 函数调用
第9章 Go函数调用
第10章 闭包和Upvalue
第11章 元编程
第12章 迭代器
第13章 异常和错误处理
第14章 词法分析
第15章 抽象语法树
第16章 语法分析
第17章 代码生成
第18章 辅助API和基础库
第19章 工具库
第20章 包和模块
第21章 协程