孙广东 2017.10.8
http://blog.csdn.NET/u010019717
十一抽时间看了这本书。
还记得第一次接触Lua 是在2014年7月份, 当时还是在长春实习(Cocos Lua), 接触了一个多月就来北京开始了Unity
我是很喜欢看纸质书的,不太喜欢看电子书。 作者说这是第一本揭示Lua实现原理的图书。 这个历史就不了解了, 但是以前收藏过
《lua源码分析》 https://wenku.baidu.com/view/c96a0e1055270722192ef772.html, 《readinglua云风的Lua源码赏析》.pdf 都是都是很早就有电子版本的。
说的有点跑偏, 要了解这些底层,还是最好有C/C++基础的好(专业会学到)。 大学还是学过编译原理,汇编语言的, 总之看完这本书还是对Lua有一个全新的认识。
Lua虚拟机 和 GC算法
1、 Java, .Net 都是基于栈的虚拟机。 Lua是使用基于 寄存器的虚拟机。
2、 Lua 最多支持2^6 - 1 = 63 个指令。 这些指令类似于汇编指令。
3、无论函数怎么执行,有多少函数,最终他们引用到的栈都是当前Lua虚拟机的栈 (这个栈在函数调用和 返回值的时候很重要)
4、 Lua词法
当时学习编译原理, 对一个语言进行解析一般是两遍遍历的过程