5 Written questions
5 Matching questions
- Kleene closure
- nonterminal symbol
- leftmost derivation
- type lattice
- address alignment
- a zero or more occurrences of a grammar item; indicated by a superscript *.
- b a derivation in which the leftmost nonterminal of the string is replaced at each step.
- c a symbol that names a phrase in a grammar.
- d see alignment.
- e a lattice structure that shows which types are higher or derivable from others, e.g. float is higher than integer. When an operation is specified on different types, the arguments may be coerced to the least upper bound of the two types in the lattice.
5 Multiple choice questions
- the output language of a compiler.
- the fractional part of a floating-point number; also, significand.
- 1. in a hash table storage scheme, to calculate a new hash value for an item when the previous hash value caused a collision with an existing item. 2. the algorithm used to calculate the new hash value.
- a method of translating statements, e.g. in a programming language, such that the translation of a phrase is built up from the translations of its components.
- a kind of parser, due to Cocke, Kasami, and Younger, that efficiently produces all possible parses of an input. Also written CYK.
5 True/False questions
pass → a phase of a compiler or assembler in which the entire source program (in its original form or some later representation) is processed.
regular expression → in a grammar, a case where A ⇒ A α for some nonterminal symbol A. In top-down parsing, left recursion will cause an infinite recursion. Also, describes such a production.
reduce-reduce conflict → in a grammar for a shift-reduce parser, a case in which an input might be reduced by more than one production.
scalar type → a statement in a programming language that provides information to the compiler, such as the structure of a data record, but does not specify executable code.
start symbol → the initial, or sentence nonterminal symbol S of a grammar.