Top-Down Parsing/Exercise 6: Difference between revisions
From Wiki**3
< Top-Down Parsing
No edit summary |
|||
Line 4: | Line 4: | ||
Consider the following grammar, where '''<tt>F</tt>''' is the initial symbol and '''<tt>{a,b,c,d,e}</tt>''' is the set of terminal symbols: | Consider the following grammar, where '''<tt>F</tt>''' is the initial symbol and '''<tt>{a,b,c,d,e}</tt>''' is the set of terminal symbols: | ||
O -> a | O -> a | ||
G -> F c | O c d | (eps) | G -> F c | O c d | (eps) | ||
F -> G b | O c F e | |||
# Examine the grammar and rewrite it so that an LL(1) predictive parser can be built for the corresponding language. | # Examine the grammar and rewrite it so that an LL(1) predictive parser can be built for the corresponding language. |
Revision as of 14:32, 17 March 2017
Problem
Consider the following grammar, where F is the initial symbol and {a,b,c,d,e} is the set of terminal symbols:
O -> a G -> F c | O c d | (eps) F -> G b | O c F e
- Examine the grammar and rewrite it so that an LL(1) predictive parser can be built for the corresponding language.
- Compute the FIRST and FOLLOW sets for all non-terminal symbols in the new grammar and build the parse table.
- Show the analysis table (stack, input, and actions) for the parsing process of the acbe input sequence.