Difficulty: Easy
Correct Answer: Terminal table
Explanation:
Introduction / Context:
Language processors maintain several tables to speed up analysis and translation. Distinguishing among terminal, literal, and identifier tables clarifies how lexical and syntactic information is organized for efficient parsing and semantic analysis.
Given Data / Assumptions:
Concept / Approach:
The terminal table (sometimes part of the token specification) enumerates all terminal symbols of the grammar. The literal table stores unique literal constants (numbers, strings). The identifier table records user-defined names and, later, semantic attributes placed in a symbol table. “Reductions” refers to parser actions, not a table.
Step-by-Step Solution:
Verification / Alternative check:
Inspect parser generators (e.g., yacc/bison) where token definitions correspond to a fixed terminal set, distinct from runtime-populated literal/identifier pools.
Why Other Options Are Wrong:
Common Pitfalls:
Confusing language-defined terminals (finite, fixed) with program-defined identifiers (unbounded, discovered during scanning).
Final Answer:
Terminal table.
Discussion & Comments