Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Concept

Extended Backus-Naur form

Notation

Extended Backus-Naur form, abbreviated EBNF, is a family of metasyntax notations that can express a context-free grammar. It is used to give a formal description of a formal language such as a computer programming language, and it extends the basic Backus-Naur form metasyntax notation. An EBNF consists of terminal symbols and non-terminal production rules that restrict how terminal symbols may be combined into a valid sequence, and it adds notation for repetition, optional parts, exclusion and comments. The earliest EBNF was developed by Niklaus Wirth, drawing on concepts from his Wirth syntax notation, and many variants are in use today. The International Organization for Standardization adopted an EBNF standard, ISO/IEC 14977, in 1996, although a researcher quoted in the article observes that the standard added three more dialects rather than unifying the field.

Facts
Origin Year
1977 1
Core Principle
Collapse the many BNF productions for a non-terminal into one production, extending Backus Naur Form 1
Connections

In Field

Source Extended Backus-Naur form (Wikipedia)

Invented

Source Extended Backus-Naur form (Wikipedia)
Sources
1. EBNF (SETL Slim)
  • EBNF overview
    EBNF allows the many productions corresponding to a non-terminals in typical BNF grammars to be collapsed into one production
  • EBNF origin, Wirth article
    appeared in the November 1977 edition of the Communications of the ACM
View the Source
Extended Backus-Naur form (Wikipedia)
  • Invented: Niklaus Wirth, Lead, developer
    The earliest EBNF was developed by Niklaus Wirth, incorporating some of the concepts (with a different syntax and notation) from Wirth syntax notation.
  • In Field: Programming Language Theory, Lead, field
    EBNF is used to make a formal description of a formal language such as a computer programming language.
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.