Bottom-Up Parsing/Exercise 15: LALR(1): Difference between revisions
From Wiki**3
| Line 3: | Line 3: | ||
Consider the following grammar, where A is the initial symbol and '''{ x, y, z }''' is the set of terminal symbols: | Consider the following grammar, where A is the initial symbol and '''{ x, y, z }''' is the set of terminal symbols: | ||
<source lang="text"> | <source lang="text"> | ||
A | A → A M | z | ||
R | R → x | z | ||
M | M → R y | z | ||
</source> | </source> | ||
# Compute the set of LALR(1) states for the grammar. Build the corresponding LALR(1) parse table. | # Compute the set of LALR(1) states for the grammar. Build the corresponding LALR(1) parse table. | ||
Latest revision as of 09:45, 2 May 2024
Problema
Consider the following grammar, where A is the initial symbol and { x, y, z } is the set of terminal symbols:
A → A M | z
R → x | z
M → R y | z
- Compute the set of LALR(1) states for the grammar. Build the corresponding LALR(1) parse table.
- Compact the parse table, eliminating and propagating reductions.
- Show the parsing process for input zzxy (including the actions/gotos and the input and stack states). In case of conflict, assume YACC's behavior.
Solução
Note-se que a solução apresentada é para SLR(1) e LALR(1) (a vermelho).
| Solução completa |
|---|
|
Error creating thumbnail: File missing Error creating thumbnail: File missing |