Make centered content design with adoption for mobile devices.
Highlight TOC.
-*- mode: outline; coding: utf-8 -*-
* What is BNF?
BNF is an acronym for "Backus Naur Form". John Backus and Peter Naur
introduced for the first time a formal notation to describe the syntax of a
given language (ALGOL 60 programming language).
rfc2234
* BNF syntax.
The meta-symbols of BNF are:
::=
meaning "is defined as"
|
meaning "or"
< >
angle brackets used to surround category names (some times skipped).
[ ]
optional items are enclosed in.
{ }
repetitive items (zero or more times) are enclosed in.
" "
terminals are enclosed in to distinguish them from meta-symbols.
* BNF in BNF.
syntax ::= { rule }
rule ::= identifier "::=" expression
expression ::= term { "|" term }
term ::= factor { factor }
factor ::= identifier |
quoted_symbol |
"(" expression ")" |
"[" expression "]" |
"{" expression "}"
identifier ::= letter { letter | digit }
quoted_symbol ::= """ { any_character } """