# The grammar to end all grammars!

• Compilers
• Grammars

Have you been stuck, trying to make an expression parser but you just can't? Well just put this in your parser gen, and you’ll be good to go!

Have you been stuck, trying to make an expression parser but you just can’t? Well just put this in your parser gen, and you’ll be good to go!

$\begin{array}{rl} E \rightarrow & E_\alpha;E_\beta \\ E_\alpha \rightarrow & (;E;) \\ & \gamma \\ & \sigma_{pre};E \\ E_\beta \rightarrow &\sigma_{in};E\\ & \sigma_{post};\\ & \epsilon \end{array}$

And to wrap it all up:

\begin{aligned} N &\in \lbrace{E\rbrace} \\ \Sigma &\in \gamma \cup \sigma \\ S &\in \sigma \end{aligned}

and:

$\left\langle N,\Sigma, R, S \right\rangle$

Where:

$\begin{array}{rl} \gamma &= \text{Terminal literals} \\ \sigma &= \begin{cases} \begin{array}{ll} a_{pre} &= \text{Prefix operators} \\ a_{in} &= \text{Infix operators} \\ a_{post} &= \text{Postfix operators} \end{array} \end{cases} \\ \end{array}$
TIL greek letters make you look smart.