Expand description
Recursive descent parser for Allium.
Expressions use a Pratt parser (precedence climbing). Declarations and block bodies use direct recursive descent. Multi-line clause values are detected by comparing the line/column of the next token against the clause keyword.