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

Discussion

A recursive descent parser resolves the dangling else in practice by

  • A.backtracking to try both attachments and then choosing the shorter one
  • B.announcing an ambiguity and then declining to parse the construct
  • C.leaving the decision to be settled when meaning is checked
  • D.consuming the else as soon as it is seen, binding it to the inner if

Answer: D

Taking the else greedily in the procedure for the if statement realises the nearest if rule directly. This is one of the places where a hand written parser is simpler than a table. The greedy consumption is a single line of code in the if statement procedure.

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

Post your comment

Please log in or register to post a comment.