I'm on the team behind RunMat, we launched the first version of the runtime last August, and for 0.5 moved away from a direct AST-to-bytecode path toward:
source -> AST -> semantic HIR -> MIR -> MIR analysis -> VM layout + bytecode -> runtime/providers
The blog is mostly about the annoying parts of making that work: figuring out whether something is indexing, a function call, a constructor, an object access, etc., and making sure the interpreter, LSP, JIT, and GPU planner all agree.
Happy to answer questions!
source -> AST -> semantic HIR -> MIR -> MIR analysis -> VM layout + bytecode -> runtime/providers
finbarr1987•1h ago
source -> AST -> semantic HIR -> MIR -> MIR analysis -> VM layout + bytecode -> runtime/providers
The blog is mostly about the annoying parts of making that work: figuring out whether something is indexing, a function call, a constructor, an object access, etc., and making sure the interpreter, LSP, JIT, and GPU planner all agree.
Happy to answer questions! source -> AST -> semantic HIR -> MIR -> MIR analysis -> VM layout + bytecode -> runtime/providers
Happy to answer questions!