96c82c27c8
Long strings didn't work before because I hadn't implemented Lua's varint decoding. It's an easy translation from the original C. Int adding previously created a float because I always coerced to float. Also an easy fix. |
||
---|---|---|
pictures | ||
src | ||
test_vectors | ||
.gitignore | ||
COPYING.txt | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
README.md
LunarWaveVM is a Lua 5.4 virtual machine written in Rust.
luac5.4 -o - test_vectors/fizz_buzz.lua | cargo run -- --pipe-bytecode
1
2
3 Fizz
4
5 Buzz
6 Fizz
7
...
44
45 FizzBuzz
46
47
48 Fizz
49
50 Buzz
Roadmap
- Loading simple pre-compiled bytecode programs
- Hash tables
- Fizzbuzz
- Closures
- Garbage collection
- Long strings
- Using arrays internally for tables
- Compiling Lua source code to bytecode