Compile-time validation
parse() only accepts string literals that fully parse against your
grammar. An invalid expression — a syntax error or an operand type
mismatch — is a compile-time error, and valid expressions get an
exactly inferred AST and result type. safeParse() even catches schema
typos at the offending leaf.