This LaTeX package helps you typeset an Extended Backus-Naur Form (EBNF) using plain text format.
First, install it from CTAN and then use in the preamble:
\documentclass{article}
\usepackage{naive-ebnf}
\begin{document}
\begin{ebnf}
<Expression> := <Variable>
| "$\lambda$" <Variable> "." <Expression>
| "(" <Expression> <Expression> ")"
\end{ebnf}
\end{document}
Otherwise, you can download naive-ebnf.sty and add to your project.
If you want to contribute yourself, make a fork, then create a branch,
then run l3build ctan in the root directory.
It should compile everything without errors. If not, submit an issue and wait.
Otherwise, make your changes and then run l3build ctan again. If the build is
still clean, submit a pull request.