绿色排版工具|热门专题|网站地图|移动官网|微信编辑器
您的当前位置:主页 > 电子书 > 计算机类 > 正文

Lua设计与实现 (codedump著) 完整pdf扫描版[127MB]

来源:[db:来源] 编辑:脚本之家 时间:2019-07-29 14:45:20 阅读:

Lua是一种可嵌入、轻量、快速、功能强大的脚本语言,使用较为广泛,主要用在游戏领域。另外,基于Nginx的OpenResty也是使用Lua来编写脚本的,很多服务器(如Redis)也支持使用Lua来编写脚本。

作为一门诞生已经超过20年的语言,它在设计上是非常克制的。以Lua5.1.4版本来说,其解释器加上周边的库函数等也就不过一万多行的代码量,而如果再进行精简,只需要吃透核心的几千行代码就可以了。

另外,作为一门以纯C代码编写的项目,Lua代码优美、结构组织紧凑,是教科书般经典的C语言项目。

本书首先介绍了Lua中的数据结构,比如通用数据是如何表示的、Lua的字符串以及表类型的实现原理,接着讨论了Lua虚拟机的实现,并且将其中重点的一些指令进行了分类讲解,最后讨论了垃圾回收、模块实现、热更新、协程等的实现原理。

目录

第1章 概述  1
1.1 前世今生  1
1.2 源码组织  5
1.3 Lua虚拟机工作流程  6
第一部分 基础数据类型
第2章 Lua中的数据类型  10
2.1 C语言中实现通用数据结构的一般做法  10
2.2 Lua通用数据结构的实现  11
第3章 字符串  16
3.1 概述  16
3.2 字符串实现  18
第4章 表  24
4.1 数据结构  24
4.2 操作算法  26
4.2.1 查找  26
4.2.2 新增元素  27
4.2.3 迭代  33
4.2.4 取长度操作  33
第二部分 虚拟机
第5章 Lua虚拟机  36
5.1 Lua执行过程概述  36
5.2 数据结构与栈  43
5.3 指令的解析  46
5.4 指令格式  47
5.5 指令的执行  53
5.6 调试工具  55
5.6.1 GDB调试  55
5.6.2 使用ChunkSpy  57
第6章 指令的解析与执行  61
6.1 Lua词法  61
6.2 赋值类指令  64
6.2.1 局部变量  64
6.2.2 全局变量  70
6.3 表相关的操作指令  72
6.3.1 创建表  72
6.3.2 查询表  78
6.3.3 元表的实现原理  79
6.4 函数相关的操作指令  84
6.4.1 相关数据结构  85
6.4.2 函数的定义  90
6.4.3 函数的调用与返回值的处理  94
6.4.4 调用成员函数  99
6.4.5 UpValue与闭包  100
6.5 数值计算类指令  105
6.6 关系逻辑类指令  107
6.6.1 相关指令  108
6.6.2 理论基础  108
6.6.3 相关数据结构及函数  111
6.6.4 关系类指令  114
6.6.5 逻辑类指令  117
6.7 循环类指令  121
6.7.1 理论基础  122
6.7.2 for循环指令  122
6.7.3 其他循环  129

相关文章推荐:

图文精选:

Copyright©2012-2030小蚂蚁信息网版权所有 站长QQ:1614558876


郑重声明:本网站资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有,如有不愿意被转载的情况,请通知我们QQ1614558876删除已转载的信息。

Top