Block for a linear sequence of operations (i.e., no branching or loops).
A Call node describes a function call such that the callee is executed in a different execution
context from the currently executing code.
A Dyn node specifies that the node to be executed next is defined dynamically via the stack.
Node for referencing procedures not present in a given
MastForest (hence “external”).
A Join node describe sequential execution. When the VM encounters a Join node, it executes the
first child first and the second child second.
A Loop node defines condition-controlled iterative execution. When the VM encounters a Loop
node, it will keep executing the body of the loop as long as the top of the stack is `1``.
Represents one or more procedures, represented as a collection of
MastNodes.
A mapping for the new location of the roots of a
MastForest after a merge.
Represents the hash used to test for equality between
MastNodes.
A batch of operations in a span block.
A Split node defines conditional execution. When the VM encounters a Split node it executes
either the on_true child or on_false child.