Skip to content

MiniVM 0.1.0

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Oct 12:21
· 7 commits to main since this release
v0.1.0
6cc1a8f

A large rewrite of MiniVM to support lua5.5

It features several things:

  1. The frontend is now a proper lua parser following PUC-Lua's approach to codegen.
  2. There is suport for --ext where if and do blocks can be expressions, callcc, and a vm.* library.
  3. There is a basic block IR that includes a liveness pass
  4. Lowering to statically typed basic blocks on demand using tricks like per-site caches, chaining, speculative guards, and various superinstructions
  5. An interpreter featuring untagged registers
  6. An immix style GC supporting weak tables and ephemerons
  7. Optimized strings that are ropes, and use interning
  8. My best attempt at a Lua CLI

And probably some bugs... we'll see