Skip to main content

Module expr

Module expr 

Source
Expand description

The non-Turing-complete expression AST (spine §7, 02 §8).

IR expressions are data (a JSON AST), never strings: the YAML surface ${{ ... }} is compiled away in parse/normalize, and the runner has no parser and no eval. Purity (no loops, no user functions, no I/O, no clock) is what makes offline re-judging (judgeDirty alignment) mathematically sound.

Structs§

ExprMap
Identifier-keyed map of expressions (baseline exemption class 2: keys are data, constrained by propertyNames; values are strongly typed).
FnExpr
Whitelisted pure-function application.
LitExpr
Literal JSON value (any JSON type, including null).
RefExpr
Reference expression: a RefPath into the closed scope grammar.

Enums§

Expr
Expression node: exactly one of lit / ref / fn (02 §8.1).
PureFn
The closed pure-function whitelist (spine §7 / A.4, 02 §8.2).