内容简介
本书是一本面向Lua程序员和脚本语言爱好者的语言自制指南和实战宝典。全书将带给读者3个维度的收获:维度1:深入理解Lua语言本身作者融合自己丰富的工程实践经验,详细阐述了Lua语言的核心语法和实现原理,深入探讨了Lua虚拟机、编译器和标准库的实现,并给出了实际可以编译执行的代码。维度2:从零开始实现一门脚本语言本书以Lua语言为例,系统、完整地(涵盖虚拟机、编译器和标准库)讲解了如何零基础编写一门脚本语言,帮助读者彻底理解脚本语言的工作原理。维度3:提升Go和Java语言编程能力本书分别用Go语言和Java语言来实现Lua,包含大量对Go和Java的使用,有很多巧妙的设计,能帮助读者提升Go和Java的编程能力。全书共21章,分为3个部分:第一部分(第1-13章) 主要讲解Lua API和虚拟机的实现,包括二进制chunk格式、Lua虚拟机指令集、元编程、错误处理等。第二部分(第14-17章)主要讨论Lua语法和编译器的实现,包括词法分析、语法分析、代码优化、代码生成等。第三部分(第18-21章) 主要讲解Lua辅助API和标准库实现,包括基础库、实用工具库、包和模块、协程等。
AI简介
这是一本全面而深入的指南,深入理解Lua语言本身,并系统讲解了如何从零开始实现一门脚本语言。书中以Lua语言为例,详细阐述了Lua语言的核心语法和实现原理,深入探讨了Lua虚拟机、编译器和标准库的实现,并给出了实际可以编译执行的代码。
本书分为三个部分,第一部分主要讲解Lua API和虚拟机的实现,包括二进制chunk格式、Lua虚拟机指令集、元编程、错误处理等。第二部分主要讨论Lua语法和编译器的实现,包括词法分析、语法分析、代码优化、代码生成等。第三部分主要讲解Lua辅助API和标准库实现,包括基础库、实用工具库、包和模块、协程等。
在第一部分中,作者首先介绍了如何准备编译环境,然后详细讲解了Lua虚拟机和Lua API的实现。这部分内容包括了Lua二进制chunk的格式、Lua虚拟机指令集、Lua栈、Lua State等。在第二部分中,作者讲解了如何实现一个Lua编译器,包括词法分析、语法分析、代码生成等。这部分内容包括了抽象语法树(AST)、语法分析器的作用、代码生成的基本过程等。在第三部分中,作者讲解了Lua标准库的实现,包括基础库、工具库、包和模块、协程等。这部分内容包