Machine-translated by Google. Questions are authored in English.
Top

Discussion

A one table implementation of nested scopes handles block entry and exit by

  • A.pushing entries onto a stack and popping them when the block ends
  • B.creating a fresh table for each block and discarding it after
  • C.recording the block number in every entry and never removing any
  • D.forbidding an inner block from declaring a name used outside

Answer: A

Correct answer: pushing entries onto a stack and popping them when the block ends

A single table organised as a stack matches the nesting exactly: entering a block records a mark, declarations are pushed above it, and leaving the block pops back to the mark. Lookup searches from the top down, so the innermost declaration is found first - which is precisely the scoping rule.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.