| LALR State 0 |
| Configuration |
Lookahead |
| <S'> ::= · <Statements> (EOF) |
|
| <Statements> ::= · <Statements> <Statement> |
EOF assign display if while |
| <Statements> ::= · <Statement> |
EOF assign display if while |
| <Statement> ::= · display <Expression> |
EOF assign display if while |
| <Statement> ::= · display <Expression> read Id |
EOF assign display if while |
| <Statement> ::= · assign Id = <Expression> |
EOF assign display if while |
| <Statement> ::= · while <Expression> do <Statements> end |
EOF assign display if while |
| <Statement> ::= · if <Expression> then <Statements> end |
EOF assign display if while |
| <Statement> ::= · if <Expression> then <Statements> else <Statements> end |
EOF assign display if while |
| Actions |
| assign Shift 1 |
| display Shift 2 |
| if Shift 3 |
| while Shift 4 |
| <Statement> Goto 5 |
| <Statements> Goto 6 |
| LALR State 2 |
| Configuration |
Lookahead |
| <Statement> ::= display · <Expression> |
EOF assign display else end if while |
| <Statement> ::= display · <Expression> read Id |
EOF assign display else end if while |
| <Expression> ::= · <Expression> > <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= · <Expression> < <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= · <Expression> <= <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= · <Expression> >= <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= · <Expression> == <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= · <Expression> <> <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= · <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if read while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if read while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if read while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if read while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Negate Exp> ::= · - <Value> |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Negate Exp> ::= · <Value> |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Value> ::= · Id |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Value> ::= · StringLiteral |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Value> ::= · NumberLiteral |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| <Value> ::= · ( <Expression> ) |
EOF - & * / + < <= <> == > >= assign display else end if read while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 13 |
| <Expression> Goto 14 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 3 |
| Configuration |
Lookahead |
| <Statement> ::= if · <Expression> then <Statements> end |
EOF assign display else end if while |
| <Statement> ::= if · <Expression> then <Statements> else <Statements> end |
EOF assign display else end if while |
| <Expression> ::= · <Expression> > <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= · <Expression> < <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= · <Expression> <= <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= · <Expression> >= <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= · <Expression> == <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= · <Expression> <> <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= · <Add Exp> |
< <= <> == > >= then |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
- & + < <= <> == > >= then |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
- & + < <= <> == > >= then |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
- & + < <= <> == > >= then |
| <Add Exp> ::= · <Mult Exp> |
- & + < <= <> == > >= then |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
- & * / + < <= <> == > >= then |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
- & * / + < <= <> == > >= then |
| <Mult Exp> ::= · <Negate Exp> |
- & * / + < <= <> == > >= then |
| <Negate Exp> ::= · - <Value> |
- & * / + < <= <> == > >= then |
| <Negate Exp> ::= · <Value> |
- & * / + < <= <> == > >= then |
| <Value> ::= · Id |
- & * / + < <= <> == > >= then |
| <Value> ::= · StringLiteral |
- & * / + < <= <> == > >= then |
| <Value> ::= · NumberLiteral |
- & * / + < <= <> == > >= then |
| <Value> ::= · ( <Expression> ) |
- & * / + < <= <> == > >= then |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 13 |
| <Expression> Goto 18 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 4 |
| Configuration |
Lookahead |
| <Statement> ::= while · <Expression> do <Statements> end |
EOF assign display else end if while |
| <Expression> ::= · <Expression> > <Add Exp> |
< <= <> == > >= do |
| <Expression> ::= · <Expression> < <Add Exp> |
< <= <> == > >= do |
| <Expression> ::= · <Expression> <= <Add Exp> |
< <= <> == > >= do |
| <Expression> ::= · <Expression> >= <Add Exp> |
< <= <> == > >= do |
| <Expression> ::= · <Expression> == <Add Exp> |
< <= <> == > >= do |
| <Expression> ::= · <Expression> <> <Add Exp> |
< <= <> == > >= do |
| <Expression> ::= · <Add Exp> |
< <= <> == > >= do |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
- & + < <= <> == > >= do |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
- & + < <= <> == > >= do |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
- & + < <= <> == > >= do |
| <Add Exp> ::= · <Mult Exp> |
- & + < <= <> == > >= do |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
- & * / + < <= <> == > >= do |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
- & * / + < <= <> == > >= do |
| <Mult Exp> ::= · <Negate Exp> |
- & * / + < <= <> == > >= do |
| <Negate Exp> ::= · - <Value> |
- & * / + < <= <> == > >= do |
| <Negate Exp> ::= · <Value> |
- & * / + < <= <> == > >= do |
| <Value> ::= · Id |
- & * / + < <= <> == > >= do |
| <Value> ::= · StringLiteral |
- & * / + < <= <> == > >= do |
| <Value> ::= · NumberLiteral |
- & * / + < <= <> == > >= do |
| <Value> ::= · ( <Expression> ) |
- & * / + < <= <> == > >= do |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 13 |
| <Expression> Goto 19 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 6 |
| Configuration |
Lookahead |
| <S'> ::= <Statements> · (EOF) |
|
| <Statements> ::= <Statements> · <Statement> |
EOF assign display if while |
| <Statement> ::= · display <Expression> |
EOF assign display if while |
| <Statement> ::= · display <Expression> read Id |
EOF assign display if while |
| <Statement> ::= · assign Id = <Expression> |
EOF assign display if while |
| <Statement> ::= · while <Expression> do <Statements> end |
EOF assign display if while |
| <Statement> ::= · if <Expression> then <Statements> end |
EOF assign display if while |
| <Statement> ::= · if <Expression> then <Statements> else <Statements> end |
EOF assign display if while |
| Actions |
| (EOF) Accept |
| assign Shift 1 |
| display Shift 2 |
| if Shift 3 |
| while Shift 4 |
| <Statement> Goto 20 |
| LALR State 8 |
| Configuration |
Lookahead |
| <Negate Exp> ::= - · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Value> Goto 22 |
| LALR State 9 |
| Configuration |
Lookahead |
| <Value> ::= ( · <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Expression> ::= · <Expression> > <Add Exp> |
) < <= <> == > >= |
| <Expression> ::= · <Expression> < <Add Exp> |
) < <= <> == > >= |
| <Expression> ::= · <Expression> <= <Add Exp> |
) < <= <> == > >= |
| <Expression> ::= · <Expression> >= <Add Exp> |
) < <= <> == > >= |
| <Expression> ::= · <Expression> == <Add Exp> |
) < <= <> == > >= |
| <Expression> ::= · <Expression> <> <Add Exp> |
) < <= <> == > >= |
| <Expression> ::= · <Add Exp> |
) < <= <> == > >= |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
- & ) + < <= <> == > >= |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
- & ) + < <= <> == > >= |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
- & ) + < <= <> == > >= |
| <Add Exp> ::= · <Mult Exp> |
- & ) + < <= <> == > >= |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
- & ) * / + < <= <> == > >= |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
- & ) * / + < <= <> == > >= |
| <Mult Exp> ::= · <Negate Exp> |
- & ) * / + < <= <> == > >= |
| <Negate Exp> ::= · - <Value> |
- & ) * / + < <= <> == > >= |
| <Negate Exp> ::= · <Value> |
- & ) * / + < <= <> == > >= |
| <Value> ::= · Id |
- & ) * / + < <= <> == > >= |
| <Value> ::= · StringLiteral |
- & ) * / + < <= <> == > >= |
| <Value> ::= · NumberLiteral |
- & ) * / + < <= <> == > >= |
| <Value> ::= · ( <Expression> ) |
- & ) * / + < <= <> == > >= |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 13 |
| <Expression> Goto 23 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 14 |
| Configuration |
Lookahead |
| <Statement> ::= display <Expression> · |
EOF assign display else end if while |
| <Statement> ::= display <Expression> · read Id |
EOF assign display else end if while |
| <Expression> ::= <Expression> · > <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= <Expression> · < <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= <Expression> · <= <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= <Expression> · >= <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= <Expression> · == <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| <Expression> ::= <Expression> · <> <Add Exp> |
EOF < <= <> == > >= assign display else end if read while |
| Actions |
| < Shift 27 |
| <= Shift 28 |
| <> Shift 29 |
| == Shift 30 |
| > Shift 31 |
| >= Shift 32 |
| read Shift 33 |
| (EOF) Reduce Rule 2 |
| assign Reduce Rule 2 |
| display Reduce Rule 2 |
| else Reduce Rule 2 |
| end Reduce Rule 2 |
| if Reduce Rule 2 |
| while Reduce Rule 2 |
| LALR State 18 |
| Configuration |
Lookahead |
| <Statement> ::= if <Expression> · then <Statements> end |
EOF assign display else end if while |
| <Statement> ::= if <Expression> · then <Statements> else <Statements> end |
EOF assign display else end if while |
| <Expression> ::= <Expression> · > <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= <Expression> · < <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= <Expression> · <= <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= <Expression> · >= <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= <Expression> · == <Add Exp> |
< <= <> == > >= then |
| <Expression> ::= <Expression> · <> <Add Exp> |
< <= <> == > >= then |
| Actions |
| < Shift 27 |
| <= Shift 28 |
| <> Shift 29 |
| == Shift 30 |
| > Shift 31 |
| >= Shift 32 |
| then Shift 36 |
| LALR State 21 |
| Configuration |
Lookahead |
| <Statement> ::= assign Id = · <Expression> |
EOF assign display else end if while |
| <Expression> ::= · <Expression> > <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= · <Expression> < <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= · <Expression> <= <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= · <Expression> >= <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= · <Expression> == <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= · <Expression> <> <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= · <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & + < <= <> == > >= assign display else end if while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Negate Exp> ::= · - <Value> |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Negate Exp> ::= · <Value> |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Value> ::= · Id |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Value> ::= · StringLiteral |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Value> ::= · NumberLiteral |
EOF - & * / + < <= <> == > >= assign display else end if while |
| <Value> ::= · ( <Expression> ) |
EOF - & * / + < <= <> == > >= assign display else end if while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 13 |
| <Expression> Goto 38 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 24 |
| Configuration |
Lookahead |
| <Add Exp> ::= <Add Exp> - · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Mult Exp> Goto 40 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 25 |
| Configuration |
Lookahead |
| <Add Exp> ::= <Add Exp> & · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Mult Exp> Goto 41 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 26 |
| Configuration |
Lookahead |
| <Add Exp> ::= <Add Exp> + · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Mult Exp> Goto 42 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 27 |
| Configuration |
Lookahead |
| <Expression> ::= <Expression> < · <Add Exp> |
EOF ) < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 43 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 28 |
| Configuration |
Lookahead |
| <Expression> ::= <Expression> <= · <Add Exp> |
EOF ) < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 44 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 29 |
| Configuration |
Lookahead |
| <Expression> ::= <Expression> <> · <Add Exp> |
EOF ) < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 45 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 30 |
| Configuration |
Lookahead |
| <Expression> ::= <Expression> == · <Add Exp> |
EOF ) < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 46 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 31 |
| Configuration |
Lookahead |
| <Expression> ::= <Expression> > · <Add Exp> |
EOF ) < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 47 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 32 |
| Configuration |
Lookahead |
| <Expression> ::= <Expression> >= · <Add Exp> |
EOF ) < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> + <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> - <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Add Exp> & <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Add Exp> ::= · <Mult Exp> |
EOF - & ) + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> * <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Mult Exp> / <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Mult Exp> ::= · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Add Exp> Goto 48 |
| <Mult Exp> Goto 15 |
| <Negate Exp> Goto 16 |
| <Value> Goto 17 |
| LALR State 34 |
| Configuration |
Lookahead |
| <Mult Exp> ::= <Mult Exp> * · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Negate Exp> Goto 50 |
| <Value> Goto 17 |
| LALR State 35 |
| Configuration |
Lookahead |
| <Mult Exp> ::= <Mult Exp> / · <Negate Exp> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · - <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Negate Exp> ::= · <Value> |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · Id |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · StringLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · NumberLiteral |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| <Value> ::= · ( <Expression> ) |
EOF - & ) * / + < <= <> == > >= assign display do else end if read then while |
| Actions |
| - Shift 8 |
| ( Shift 9 |
| Id Shift 10 |
| NumberLiteral Shift 11 |
| StringLiteral Shift 12 |
| <Negate Exp> Goto 51 |
| <Value> Goto 17 |
| LALR State 36 |
| Configuration |
Lookahead |
| <Statement> ::= if <Expression> then · <Statements> end |
EOF assign display else end if while |
| <Statement> ::= if <Expression> then · <Statements> else <Statements> end |
EOF assign display else end if while |
| <Statements> ::= · <Statements> <Statement> |
assign display else end if while |
| <Statements> ::= · <Statement> |
assign display else end if while |
| <Statement> ::= · display <Expression> |
assign display else end if while |
| <Statement> ::= · display <Expression> read Id |
assign display else end if while |
| <Statement> ::= · assign Id = <Expression> |
assign display else end if while |
| <Statement> ::= · while <Expression> do <Statements> end |
assign display else end if while |
| <Statement> ::= · if <Expression> then <Statements> end |
assign display else end if while |
| <Statement> ::= · if <Expression> then <Statements> else <Statements> end |
assign display else end if while |
| Actions |
| assign Shift 1 |
| display Shift 2 |
| if Shift 3 |
| while Shift 4 |
| <Statement> Goto 5 |
| <Statements> Goto 52 |
| LALR State 37 |
| Configuration |
Lookahead |
| <Statement> ::= while <Expression> do · <Statements> end |
EOF assign display else end if while |
| <Statements> ::= · <Statements> <Statement> |
assign display end if while |
| <Statements> ::= · <Statement> |
assign display end if while |
| <Statement> ::= · display <Expression> |
assign display end if while |
| <Statement> ::= · display <Expression> read Id |
assign display end if while |
| <Statement> ::= · assign Id = <Expression> |
assign display end if while |
| <Statement> ::= · while <Expression> do <Statements> end |
assign display end if while |
| <Statement> ::= · if <Expression> then <Statements> end |
assign display end if while |
| <Statement> ::= · if <Expression> then <Statements> else <Statements> end |
assign display end if while |
| Actions |
| assign Shift 1 |
| display Shift 2 |
| if Shift 3 |
| while Shift 4 |
| <Statement> Goto 5 |
| <Statements> Goto 53 |
| LALR State 38 |
| Configuration |
Lookahead |
| <Statement> ::= assign Id = <Expression> · |
EOF assign display else end if while |
| <Expression> ::= <Expression> · > <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= <Expression> · < <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= <Expression> · <= <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= <Expression> · >= <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= <Expression> · == <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| <Expression> ::= <Expression> · <> <Add Exp> |
EOF < <= <> == > >= assign display else end if while |
| Actions |
| < Shift 27 |
| <= Shift 28 |
| <> Shift 29 |
| == Shift 30 |
| > Shift 31 |
| >= Shift 32 |
| (EOF) Reduce Rule 4 |
| assign Reduce Rule 4 |
| display Reduce Rule 4 |
| else Reduce Rule 4 |
| end Reduce Rule 4 |
| if Reduce Rule 4 |
| while Reduce Rule 4 |