Railroad — Arithmetic Expressions
Classic expr / term / factor precedence-climbing grammar for calculators and compilers.
Make it your own.
# Operator precedence via layered rules
expr ::= term { ( "+" | "-" ) term }
term ::= factor { ( "*" | "/" ) factor }
factor ::= number | identifier | "(" expr ")" | "-" factor