计算机
类型
9.2
豆瓣评分
可以朗读
语音朗读
319千字
字数
2018-06-01
发行日期
展开全部
主编推荐语
Lua:开源脚本语言,游戏嵌入式领域重要,学习编译原理参考。
内容简介
Lua语言是开源嵌入式脚本语言领域中独树一帜的一门语言,在包括游戏、嵌入式等领域具有不可替代的重要地位和极为广泛的应用,Lua也是学习编译原理、VM虚拟机等的重要参考和现实依据,Lua程序设计(第4版)结合作者多年的教学经验,更新到Lua5.3版本,让读者更好地吸收了该语言的特性。
目录
- 版权信息
- 内容简介
- 推荐序一
- 推荐序二
- 译者序
- 前言
- 预期读者
- 全书结构
- 其他资源
- 排版约定
- 运行示例
- 致谢
- 读者服务
- 第1部分 语言基础
- 1 Lua语言入门
- 1.1 程序段
- 1.2 一些词法规范
- 1.3 全局变量
- 1.4 类型和值
- 1.5 独立解释器
- 1.6 练习
- 2 小插曲:八皇后问题
- 2.1 练习
- 3 数值
- 3.1 数值常量
- 3.2 算术运算
- 3.3 关系运算
- 3.4 数学库
- 3.5 表示范围
- 3.6 惯例
- 3.7 运算符优先级
- 3.8 兼容性
- 3.9 练习
- 4 字符串
- 4.1 字符串常量
- 4.2 长字符串/多行字符串
- 4.3 强制类型转换
- 4.4 字符串标准库
- 4.5 Unicode编码
- 4.6 练习
- 5 表
- 5.1 表索引
- 5.2 表构造器
- 5.3 数组、列表和序列
- 5.4 遍历表
- 5.5 安全访问
- 5.6 表标准库
- 5.7 练习
- 6 函数
- 6.1 多返回值
- 6.2 可变长参数函数
- 6.3 函数table.unpack
- 6.4 正确的尾调用
- 6.5 练习
- 7 输入输出
- 7.1 简单I/O模型
- 7.2 完整I/O模型
- 7.3 其他文件操作
- 7.4 其他系统调用
- 7.5 练习
- 8 补充知识
- 8.1 局部变量和代码块
- 8.2 控制结构
- 8.3 break、return和goto
- 8.4 练习
- 第2部分 编程实操
- 9 闭包
- 9.1 函数是第一类值
- 9.2 非全局函数
- 9.3 词法定界
- 9.4 小试函数式编程
- 9.5 练习
- 10 模式匹配
- 10.1 模式匹配的相关函数
- 10.2 模式
- 10.3 捕获
- 10.4 替换
- 10.5 诀窍
- 10.6 练习
- 11 小插曲:出现频率最高的单词
- 11.1 练习
- 12 日期和时间
- 12.1 函数os.time
- 12.2 函数os.date
- 12.3 日期和时间处理
- 12.4 练习
- 13 位和字节
- 13.1 位运算
- 13.2 无符号整型数
- 13.3 打包和解包二进制数据
- 13.4 二进制文件
- 13.5 练习
- 14 数据结构
- 14.1 数组
- 14.2 矩阵及多维数组
- 14.3 链表
- 14.4 队列及双端队列
- 14.5 反向表
- 14.6 集合与包
- 14.7 字符串缓冲区
- 14.8 图形
- 14.9 练习
- 15 数据文件和序列化
- 15.1 数据文件
- 15.2 序列化
- 15.3 练习
- 16 编译、执行和错误
- 16.1 编译
- 16.2 预编译的代码
- 16.3 错误
- 16.4 错误处理和异常
- 16.5 错误信息和栈回溯
- 16.6 练习
- 17 模块和包
- 17.1 函数require
- 17.2 Lua语言中编写模块的基本方法
- 17.3 子模块和包
- 17.4 练习
- 第3部分 语言特性
- 18 迭代器和泛型for
- 18.1 迭代器和闭包
- 18.2 泛型for的语法
- 18.3 无状态迭代器
- 18.4 按顺序遍历表
- 18.5 迭代器的真实含义
- 18.6 练习
- 19 小插曲:马尔可夫链算法
- 19.1 练习
- 20 元表和元方法
- 20.1 算术运算相关的元方法
- 20.2 关系运算相关的元方法
- 20.3 库定义相关的元方法
- 20.4 表相关的元方法
- 20.5 练习
- 21 面向对象(Object-Oriented)编程
- 21.1 类(Class)
- 21.2 继承(Inheritance)
- 21.3 多重继承(Multiple Inheritance)
- 21.4 私有性(Privacy)
- 21.5 单方法对象(Single-method Object)
- 21.6 对偶表示(Dual Representation)
- 21.7 练习
- 22 环境(Environment)
- 22.1 具有动态名称的全局变量
- 22.2 全局变量的声明
- 22.3 非全局环境
- 22.4 使用 ENV
- 22.5 环境和模块
- 22.6 ENV和load
- 22.7 练习
- 23 垃圾收集
- 23.1 弱引用表
- 23.2 记忆函数(Memorize Function)
- 23.3 对象属性(Object Attribute)
- 23.4 回顾具有默认值的表
- 23.5 瞬表(Ephemeron Table)
- 23.6 析构器(Finalizer)
- 23.7 垃圾收集器
- 23.8 控制垃圾收集的步长(Pace)
- 23.9 练习
- 24 协程(Coroutine)
- 24.1 协程基础
- 24.2 哪个协程占据主循环
- 24.3 将协程用作迭代器
- 24.4 事件驱动式编程
- 24.5 练习
- 25 反射(Reflection)
- 25.1 自省机制(Introspective Facility)
- 25.2 钩子(Hook)
- 25.3 调优(Profile)
- 25.4 沙盒(Sandbox)
- 25.5 练习
- 26 小插曲:使用协程实现多线程
- 26.1 练习
- 第4部分 C语言API
- 27 C语言API总览
- 27.1 第一个示例
- 27.2 栈
- 27.3 使用C API进行错误处理
- 27.4 内存分配
- 27.5 练习
- 28 扩展应用
- 28.1 基础知识
- 28.2 操作表
- 28.3 调用Lua函数
- 28.4 一个通用的调用函数
- 28.5 练习
- 29 在Lua中调用C语言
- 29.1 C函数
- 29.2 延续(Continuation)
- 29.3 C模块
- 29.4 练习
- 30 编写C函数的技巧
- 30.1 数组操作
- 30.2 字符串操作
- 30.3 在C函数中保存状态
- 30.4 练习
- 31 C语言中的用户自定义类型
- 31.1 用户数据(Userdata)
- 31.2 元表(Metatable)
- 31.3 面向对象访问
- 31.4 数组访问
- 31.5 轻量级用户数据
- 31.6 练习
- 32 管理资源
- 32.1 目录迭代器
- 32.2 XML解析器
- 32.3 练习
- 33 线程和状态
- 33.1 多线程
- 33.2 Lua状态
- 33.3 练习
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。