Skip to main content

Module syntax

Module syntax 

Source
Expand description

Abstract syntax and source-position newtypes.

Spike 4 extends the spike-3 grammar with two non-local control-flow forms: Expr::Throw raises an exception carrying any runtime value, and Expr::TryCatch catches a thrown value into a let-style binder around the handler. Every other reduction form is unchanged; the propagation of a thrown value is purely a property of the evaluator’s Outcome return type, not of the syntax tree.

Structs§

Position
A byte offset into the source string.
VarName
A variable or property identifier.

Enums§

Expr
The abstract syntax tree.