Module interpreter

Module interpreter 

Source

Structs§

Context
ExtFunction
StageInterpreter

Enums§

Value
Evalueated result of the expression. Theoritically, it can be tagless union because it is statically typed, but we use enum for better readability.
ValueToExprError

Traits§

GeneralInterpreter
Trait for defining general reduction rules of Lambda calculus, independent of the primitive types, even if it is untyped.
ValueTrait

Functions§

create_default_interpreter
expand_macro
Evaluate root expression. If the result value is not code, return original expression as is. if the result value is code, this function recursively evaluate the expression inside the code until the result becomes non-code.