Question
Consider the following grammar (G1) for simple assignment statements. (The symbols in double quotation marks are terminal symbols.) assign id = expr id A |
Consider the following grammar (G1) for simple assignment statements. (The symbols in double quotation marks are terminal symbols.)
assign id = expr
id A | B | C
expr expr + expr
| expr expr
| ( expr )
| id
a) Give a (leftmost) derivation for string A = B A + C.
b) Give the parse tree for string A = B A + C.
c) Is the grammar ambiguous or unambiguous? Explain your answer.
d) Consider the following grammar (G2).
assign id = expr
id A | B | C
expr id + expr
| id expr
| ( expr )
| id
What is the difference between G2 and G1? Explain your answer
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started