Repository navigation
A large rewrite of MiniVM to support lua5.5
It features several things:
- The frontend is now a proper lua parser following PUC-Lua's approach to codegen.
- There is suport for
--extwhere if and do blocks can be expressions,callcc, and avm.*library. - There is a basic block IR that includes a liveness pass
- Lowering to statically typed basic blocks on demand using tricks like per-site caches, chaining, speculative guards, and various superinstructions
- An interpreter featuring untagged registers
- An immix style GC supporting weak tables and ephemerons
- Optimized strings that are ropes, and use interning
- My best attempt at a Lua CLI
And probably some bugs... we'll see