levo

Programming Paradigms and Computer Languages

Backus-Naur form and syntax diagrams

  • 3 things to know
  • Component 1

Overview

Meaning of the symbols ::= and | in Backus-Naur form, terminal and a non-terminal symbol and syntax diagram.

What you need to know

Answer each one before you reveal it.

Your recallNot started
Key term

What is Backus-Naur form used for?

Key term

State the meaning of the symbols ::= and | in Backus-Naur form.

Key term

How are non-terminals written in Backus-Naur form?

Questions from this subtopic

Each one with the model answer underneath.

  1. 1

    What is Backus-Naur form used for?

    Model answer

    Backus-Naur form is a notation for stating the syntax rules of a language precisely. Each rule defines one construct in terms of simpler ones.

  2. 2

    State the meaning of the symbols ::= and | in Backus-Naur form.

    Model answer

    The symbol ::= means 'is defined as' and separates a rule name from its definition. The symbol | separates alternative definitions, meaning 'or'.

  3. 3

    How are non-terminals written in Backus-Naur form?

    Model answer

    A non-terminal is written inside angle brackets, for example <digit>. A non-terminal must be defined by a rule of its own somewhere in the grammar.

  4. 4

    Distinguish between a terminal and a non-terminal symbol.

    Model answer

    A terminal is a literal character that appears in the finished program text. A non-terminal names a construct that must be replaced using another rule.

  5. 5

    Write a Backus-Naur form rule defining a decimal digit.

    Model answer

    The rule is <digit> ::= 0|1|2|3|4|5|6|7|8|9. Any one of those ten characters is a valid digit.

  6. 6

    Write a Backus-Naur form rule for an unsigned integer of one or more digits.

    Model answer

    The rule is <unsigned integer> ::= <digit> | <digit><unsigned integer>. The second alternative refers to the rule itself, which allows any length.

Other ways to work this

The same content, four other ways.

What is inside Levo

Six ways to work the same material.

1Closed book
2Open book
3Closed book

The 3-step method, run for you

Answer cold, learn it, then prove it stuck. Levo tracks the jump between your first attempt and your last.

Data Structures: Arrays, Records and Hash Tables
Stacks, Queues, Linked Lists and Trees
Boolean Logic and Simplification
Algorithms, Pseudo-Code and Programming Constructs

Cram a whole paper in one sitting

Sort every topic into what you know and what you do not, then drill only the weak ones.

KDW to HAT.
decryptsencryptscompresses

Blank Blitz makes facts automatic

Rapid timed gap-fills on the terms and numbers you need to recall without thinking.

AThe two are not the same.
BOpen source refers to the availability of the code.
CMuch open source software is free of charge.

Build It gets the exam shape right

Assemble a full-mark answer from its marking points, in the order an examiner wants them.

Backup means the copy of the data.
TrueFalse

Test It catches misconceptions

Spot the fault in a statement. The traps are the mistakes students actually make.

721941163128510

Brain Breaks between sessions

Short focus games to reset attention, so the next set lands better than the last.

Every question in Programming Paradigms and Computer Languages, on a schedule.

Attempt a question from memory, write the correct version, then attempt it again. Levo records the jump between your first attempt and your last, and brings each question back on the day you are due to forget it.

Or £46 a year, about £3.83 a month. Cancel anytime.