LunarWaveVM is a Lua 5.4 virtual machine written in Rust.
 
 
Go to file
_ af49dc68be 📝 doc 2023-09-27 14:06:54 -05:00
pictures 📝 doc: roadmap 2023-09-27 13:58:37 -05:00
src allow Lua to call native Rust functions 2023-09-27 01:46:53 -05:00
test_vectors 📝 doc: roadmap 2023-09-27 13:58:37 -05:00
.gitignore another test 2023-09-24 17:34:38 -05:00
COPYING.txt 📝 doc: license 2023-09-27 14:03:21 -05:00
Cargo.lock ♻️ refactor: invoke luac during tests so I don't have to version artifacts 2023-09-26 12:04:17 -05:00
Cargo.toml ♻️ refactor: invoke luac during tests so I don't have to version artifacts 2023-09-26 12:04:17 -05:00
README.md 📝 doc 2023-09-27 14:06:54 -05:00

README.md

LunarWaveVM is a Lua 5.4 virtual machine written in Rust.

A star field with an orange crab-shaped nebula facing a dark purple moon with a bright magenta crescent.

LunarWaveVM relies on the PUC-Rio implementation of luac to compile bytecode.

cargo run -- --script test_vectors/fizz_buzz.lua

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