Triton VM (GitHub, Crates.io) is a virtual machine that comes with Algebraic Execution Tables (AET) and Arithmetic Intermediate Representations (AIR) for use in combination with a STARK proof system.
The package triton-opcodes
delivers the Instruction
type and a parser from assembly like:
// Swap the top two stack elements so they're sorted.
//
// The larger element is at the top.
//
// Before: _ a b
// After: _ min(a, b) max(a, b)
minmax:
dup 1 // _ a b a
dup 1 // _ a b a b
lt // _ a b (b < a)
skiz swap 1 // _ min(a, b) max(a, b)
return
Features:
lt
by simple substitution.<name>:
and jumping to them looks like call <name>
.// ...
.