Is there any formalization of how to invert a formatter, or is this just something they're figuring out in code as they go along?
Expr ::= Expr + Term | Expr - Term | Term;
Term ::= Term * Factor | Term / Factor | Factor
Factor ::= Int | ( Expr )