The GO programming language syntax is specified using Extended Backus-Naur Form (EBNF):
- Production = production_name “=” [ Expression ]
- Expression = Alternative { “l” Alternative }
- Alternative = Term { Term }
- Term = Production_name l token [ “?”token] l Group l Option l Repetition
- Group = ” ( “” Expression”)”
- Option = ” [ ” Expression “” ]”
- Repetition = ” {” Expression “}”