technologybriefs
9:52in productionCh. 1 · The Name Is Wrong/ 9:52 · ceiling 15 min
Software

Peter Naur

BNF didn’t invent syntax—it weaponised precision against hand-waving.

Peter Naur co-developed BNF, edited the ALGOL 60 Report, and insisted on calling it 'Backus normal form'. His work made syntax formal, testable, and separable from semantics—but did not solve meaning, ambiguity, or execution.

Chapters & takeaways4
  1. 0:58
    The Name Is Wrong

    BNF is a co-invention—not Backus’s alone—and its name misrepresents Naur’s role and preference.

  2. 2:50
    The Report Was the Engine

    Naur’s editorial rigour in the ALGOL 60 Report turned BNF from notation into infrastructure.

  3. 4:27
    Syntax Before Code

    ALGOL 60 was the first major language whose syntax was fully and formally specified—before implementation.

  4. 6:11
    A Refusal of Credit

    Naur rejected eponymous naming—not out of modesty, but because it obscured the collaborative, editorial nature of the work.

Worth your time?

Yes. Study the whole thing.

4.5/ 5
What works
  • Enables deterministic grammar validation.
  • Supports automatic parser generation.
  • Makes syntax changes auditable and reversible.
What does not
  • It does not define semantics.
  • It does not resolve parsing conflicts.
  • It does not scale to modern language features like type-dependent syntax.
Study it if
  • Language designers
  • Compiler engineers
  • Formal methods practitioners
Skip it if
  • Application developers
  • Data scientists
  • DevOps engineers
The written brief1 min read

What it is and the problem it solves

BNF is a notation for precisely specifying the syntactic structure of programming languages. It solves the problem of ambiguous, informal language definitions that hindered early compiler development and cross-compiler portability.

How it works

BNF is a metalanguage: it uses recursive syntactic rules to define the grammar of programming languages. Each rule has a left-hand non-terminal symbol and a right-hand expansion containing terminals (literal tokens) and other non-terminals.

What works

BNF enabled unambiguous, human-readable, and machine-parsable grammar definitions. Its use in the ALGOL 60 Report made syntax specification reproducible—and directly supported the first wave of portable, standards-compliant compilers.

What does not

BNF does not describe semantics, runtime behaviour, or ambiguity resolution. It cannot express constraints like ‘a variable must be declared before use’ or handle operator precedence without ad-hoc extensions.

What it changes

It established syntax as a separable, testable, and machine-processable layer of language design—shifting compiler construction from ad-hoc parsing to systematic derivation.

Is it worth your time

Yes—if you work with language definition, parser generation, or formal specification. BNF remains embedded in toolchains like yacc and ANTLR, but its notation is now often augmented or replaced by EBNF or context-free grammar variants.

Same field · Software4 of 26
Up next in Technology

PlayStation

· 8:48

A revenge console built on CDs—not cartridges—that made 3D gaming cheap, developer-friendly, and unavoidable.

8:48