Computing - Backus-Naur Form
What is Backus-Naur Form?
A formal notation used to describe the syntax rules of a language.
What type of languages can’t be expressed by a regular expression?
Context-free languages.
What does ::= mean in BNF?
::= mean in BNF?Is defined as.
What does | mean in BNF?
| mean in BNF?Or.
What does <> mean in BNF?
<> mean in BNF?Specifys a category.
What do two symbols side by side mean in BNF?
That one symbol must follow the other.
What is a terminal symbol in BNF?
A symbol that can’t be broken further down.
What is a non-terminal symbol in BNF?
A symbol that can be further broken down.
What does it look like to define a “digit” category in BNF?
<digit> ::= 0|1|2|3|4|5|6|7|8|9
How would you define a postcode category as two uppercase letters followed by two digits?
postcode category as two uppercase letters followed by two digits?<postcode> ::= <upper><upper><digit><digit>
In ab|cd, is it ab OR cd or a (b OR c) d?
ab|cd, is it ab OR cd or a (b OR c) d?ab OR cd
Why is BNF used for programming languages?
Because the instructions for a computer must not be ambiguous in any way.
What is a single BNF statement called?
A production rule.
2021-01-21
How could you write a <number> category that’s made of a <digit>?
<number> category that’s made of a <digit>?<number> ::= <digit>|<digit><number>
What does $1234$ match?
What does $1234$ match?valueterm
What does $0 + A$ match?
What does $0 + A$ match?sum
What does $XY$ match?
What does $XY$ match?Nothing, not defined.
What does $X + Y + 3 + 1$ match?
What does $X + Y + 3 + 1$ match?sum