Markup
Primitives
Grammar
A grammar is a declarative primitive representing the finite sets of rules and symbols of a given language.
Rule (or Production)
A rule is a declarative primitive representing the symbols for a given grammar.
Notation: • -> •
Symbol (or Atom)
A symbol is a primitive representing strings.
Notation: •
The Null Symbol (or Concatenation)
The null symbol is the identity primitive representing the empty string.
Notation: «»
A Terminal Symbol (or Literal)
A terminal symbol is a declarative primitive representing the literal characters of strings belonging to the finite set of terminal symbols for a given grammar.
Notation: «•»
A Nonterminal Symbol (or Expansion)
A nonterminal symbol is a declarative primitive representing the expansions of the literal characters of strings belonging to the finite set of nonterminal symbols for a given grammar.
Notation: ‹•›
The Start Nonterminal Symbol (or Union)
A start symbol is the identity primitive representing the union of the expansions of the literal characters of strings encompassing the finite set of nonterminal symbols for a given grammar.
Notation: S
References
- https://en.wikipedia.org/wiki/Context-free_grammar
- https://en.wikipedia.org/wiki/Terminal_and_nonterminal_symbols
- https://en.wikipedia.org/wiki/Formal_grammar
- https://en.wikipedia.org/wiki/Parsing_expression_grammar
- https://en.wikipedia.org/wiki/Backus–Naur_form
- https://en.wikipedia.org/wiki/Earley_parser