参考文献
-
Lua 5.4 Reference Manual,也是这个项目的需求文档。
-
《Lua程序设计(第4版)》,Lua官方教程。虽然是基于Lua 5.3版本,但是由于5.4版本的变化并不多,所以影响不大。
-
《Lua设计与实现》,感觉像是一份Lua官方实现的源码阅读笔记,直接讲代码实现细节,刚上手看时很吃力。
-
《自己动手实现Lua》,跟本系列文章很像,也是从零实现一个Lua解释器。但是这本书是以Lua官方实现里的字节码定义为出发点,先实现虚拟机去执行字节码,然后再实现编译器去生成字节码。而我们这系列文章是以Lua语言手册为出发点,设计并实现编译过程、虚拟机、字节码定义等。
-
Why is there no continue statement?,对Lua中为什么没有continue语句的解释。但并不完整。
-
《Rust程序设计语言》,Rust官方教程。
-
Rust官方文档,主要是参考其中的标准库部分。
-
Designing a GC in Rust,介绍用Rust实现GC的设计思路。
-
gc-crate,基于上述设计思路的一个实现。
-
A Tour of Safe Tracing GC Designs in Rust,介绍一个用Rust实现的GC设计。我只记得其中一点:用Rust实现GC是很难的。
-
Implementing a safe garbage collector in Rust,另外一个用Rust实现GC的项目。
-
When Zig is safer and faster than Rust,以Roc语言使用Zig而非Rust来实现GC部分为出发点,来说明用unsafe Rust来实现某些功能是很困难的。
-
Luster,用Rust实现的Lua解释器,也是用的GC而非RC,但项目没完成。
-
The Story of Tail Call Optimizations in Rust,对Rust语言支持尾调用的讨论。
-
Lua bindings: lua, hlua or rlua?,Reddit上对现有的3个Lua crate:lua、hlua和rlua的简单对比。
-
A Survey of Rust Embeddable Scripting Languages,对几个可以在Rust中使用的脚本语言(包括Lua)在使用方式上的对比。
-
Floating Point Arcade,把整型随机数转换为浮点数的介绍。