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

Discussion

A mid-rule action in Yacc is implemented by

  • A.delaying the action until the whole production is reduced
  • B.executing the action during the scanning of the input
  • C.duplicating the production once for each action present
  • D.introducing an anonymous nonterminal deriving epsilon

Answer: D

Correct answer: introducing an anonymous nonterminal deriving epsilon

An action in the middle of a rule needs a reduction to trigger it, so the generator invents a nonterminal deriving nothing, places it at that point, and attaches the action to its reduction. The cost is that this extra nonterminal can introduce conflicts into a grammar that was otherwise clean.

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

Post your comment

Please log in or register to post a comment.