chicode/lisa/5.1.1

NOTE: the latest version is 5.1.5

Lisa.Process

type Context
This is sort of strange in order to fix a problem with recursive type aliases.
type Expr
= GetSymbol String
| FuncCall ExprNode (List ExprNode)
| Cond CondExpr
| Func FuncDecl
| Let (List ( String, ExprNode )) ExprNode
| RecordLit (Dict String ExprNode)
| FieldAccess (List String)
| NoneLit
| BoolLit Bool
| NumLit Float
| StrLit String
| ListLit (List ExprNode)
type alias ExprNode =
LocatedNode Expr
type alias MacroHandler =
Context -> Location -> List AstNode -> Result Error ExprNode
encodeExpr : ExprNode -> Value
processExpr : Context -> AstNode -> Result Error ExprNode
processExprOpts : Options -> AstNode -> Result Error ExprNode
processProgram : Options -> List AstNode -> Result Error Program
type alias Options =
{ macros : Dict String MacroHandler }
type alias Program =
Dict String ExprNode
= Expression ExprNode
| Definition String ExprNode
processReplExpr : Options -> AstNode -> Result Error ReplExpression