Skip to content

Instantly share code, notes, and snippets.

@SMotaal
Last active January 13, 2022 17:00
Show Gist options
  • Save SMotaal/864184ec44772d22b9dcaae6cf975edc to your computer and use it in GitHub Desktop.
Save SMotaal/864184ec44772d22b9dcaae6cf975edc to your computer and use it in GitHub Desktop.
Markup Definitions

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment