Parse let and letrec expressions
Parse let and letrec expressions
Parse code blocks
Parse code blocks
Continuation handling.
Continuation handling.
The following attribute contains the SECD bytecode generated from the ISWIM syntax node it is attached to.
The following attribute contains the SECD bytecode generated from the ISWIM syntax node it is attached to.
Parse tuple / record expressions
Parse tuple / record expressions
Parse if .
Parse if ... then ... else ...
Parse lambda (fun) expressions
Parse lambda (fun) expressions
Parse toplevel statements
Parse toplevel statements
Literals, identifiers, keywords and other atomic phrases
Literals, identifiers, keywords and other atomic phrases
Precedence based infix expression parsers.
Precedence based infix expression parsers. Ordered from highest to lowest precedence.
Top level parsers
Top level parsers
Primitives
Primitives
Process an ISWIM program by checking for semantic rrors, translating to bytecode, optionally dumping the bytecode and optionally executing.
Process an ISWIM program by checking for semantic rrors, translating to bytecode, optionally dumping the bytecode and optionally executing.
(Changed in version 2.9.0) The p0 call-by-name arguments is evaluated at most once per constructed Parser object, instead of on every need that arises during parsing.
Identifiers - keywords and names.
Identifiers - keywords and names.
Parse return expressions
Parse return expressions
(Changed in version 2.10.0) stringLiteral allows escaping single and double quotes, but not forward slashes any longer.
References.
References.
Parse while expression
Parse while expression
Main program for ISWIM.