2019-03-21 21:09:36 -06:00
|
|
|
Created by PLY version 3.11 (http://www.dabeaz.com/ply)
|
|
|
|
|
|
|
|
|
|
Grammar
|
|
|
|
|
|
|
|
|
|
Rule 0 S' -> programa
|
|
|
|
|
Rule 1 programa -> program id V F B end program
|
2019-04-24 22:10:01 -05:00
|
|
|
Rule 2 V -> V Tipo Dim doubleColon Rid action_addSymbols action_32
|
2019-03-21 21:09:36 -06:00
|
|
|
Rule 3 V -> <empty>
|
|
|
|
|
Rule 4 Rid -> id
|
|
|
|
|
Rule 5 Rid -> Rid coma id
|
|
|
|
|
Rule 6 Tipo -> integer
|
|
|
|
|
Rule 7 Tipo -> real
|
2019-04-24 22:10:01 -05:00
|
|
|
Rule 8 Dim -> openBra int action_30 closedBra
|
|
|
|
|
Rule 9 Dim -> openBra int action_30 closedBra openBra int action_31 closedBra
|
2019-03-21 21:09:36 -06:00
|
|
|
Rule 10 Dim -> <empty>
|
|
|
|
|
Rule 11 F -> F subroutine id B end subroutine
|
|
|
|
|
Rule 12 F -> <empty>
|
|
|
|
|
Rule 13 B -> B S
|
|
|
|
|
Rule 14 B -> <empty>
|
2019-04-05 03:23:41 +00:00
|
|
|
Rule 15 S -> Dimensional action_7 equals EA action_8
|
2019-03-21 23:13:56 -06:00
|
|
|
Rule 16 S -> id parens
|
2019-03-21 21:09:36 -06:00
|
|
|
Rule 17 S -> read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
Rule 18 S -> print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
Rule 19 S -> if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
Rule 20 S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
Rule 21 S -> do then action_21 B action_22 end do
|
2019-03-21 21:09:36 -06:00
|
|
|
Rule 22 S -> swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
Rule 23 S -> exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
Rule 24 S -> id openParen closedParen
|
|
|
|
|
Rule 25 Dimensional -> id DimensionsOrEmpty
|
|
|
|
|
Rule 26 DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen
|
|
|
|
|
Rule 27 DimensionsOrEmpty -> <empty>
|
|
|
|
|
Rule 28 ComaEAOrEmpty -> coma EA action_setDim2
|
|
|
|
|
Rule 29 ComaEAOrEmpty -> <empty>
|
2019-04-29 17:56:14 -05:00
|
|
|
Rule 30 RDimensional -> Dimensional action_1 action_36
|
|
|
|
|
Rule 31 RDimensional -> RDimensional coma Dimensional action_1 action_36
|
2019-04-24 22:10:01 -05:00
|
|
|
Rule 32 RDimOrString -> DimOrString
|
|
|
|
|
Rule 33 RDimOrString -> RDimOrString coma DimOrString
|
2019-04-28 04:52:42 -05:00
|
|
|
Rule 34 DimOrString -> Dimensional action_1 action_33
|
|
|
|
|
Rule 35 DimOrString -> string action_34
|
2019-04-29 17:56:14 -05:00
|
|
|
Rule 36 DimOrString -> endline action_34
|
|
|
|
|
Rule 37 Relif -> openParen EL closedParen action_17 then B
|
|
|
|
|
Rule 38 Relif -> Relif elif action_18 openParen EL closedParen action_17 then B
|
|
|
|
|
Rule 39 ElseOrEmpty -> else action_19 B
|
|
|
|
|
Rule 40 ElseOrEmpty -> <empty>
|
|
|
|
|
Rule 41 IntOrEmpty -> coma int action_28
|
|
|
|
|
Rule 42 IntOrEmpty -> action_27
|
|
|
|
|
Rule 43 EA -> MultDiv
|
|
|
|
|
Rule 44 EA -> EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
Rule 45 SumOrSub -> plus
|
|
|
|
|
Rule 46 SumOrSub -> minus
|
|
|
|
|
Rule 47 MultDiv -> EAParens
|
|
|
|
|
Rule 48 MultDiv -> MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
Rule 49 MDSymbols -> mul
|
|
|
|
|
Rule 50 MDSymbols -> div
|
|
|
|
|
Rule 51 EAParens -> EItem
|
|
|
|
|
Rule 52 EAParens -> openParen EA closedParen
|
|
|
|
|
Rule 53 EL -> AND
|
|
|
|
|
Rule 54 EL -> EL or action_10 AND action_9
|
|
|
|
|
Rule 55 AND -> Equality
|
|
|
|
|
Rule 56 AND -> AND and action_12 Equality action_11
|
|
|
|
|
Rule 57 Equality -> EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
Rule 58 Equality -> openParen EL closedParen
|
|
|
|
|
Rule 59 Equality -> not EL action_15
|
|
|
|
|
Rule 60 EItem -> Dimensional action_1
|
|
|
|
|
Rule 61 EItem -> int action_2
|
|
|
|
|
Rule 62 EItem -> rea action_2_rea
|
|
|
|
|
Rule 63 EQSymbols -> less
|
|
|
|
|
Rule 64 EQSymbols -> more
|
|
|
|
|
Rule 65 EQSymbols -> doubleEquals
|
|
|
|
|
Rule 66 EQSymbols -> notEquals
|
|
|
|
|
Rule 67 EQSymbols -> lessEquals
|
|
|
|
|
Rule 68 EQSymbols -> moreEquals
|
|
|
|
|
Rule 69 action_addSymbols -> <empty>
|
|
|
|
|
Rule 70 action_1 -> <empty>
|
|
|
|
|
Rule 71 action_2 -> <empty>
|
|
|
|
|
Rule 72 action_2_rea -> <empty>
|
|
|
|
|
Rule 73 action_3 -> <empty>
|
|
|
|
|
Rule 74 action_4 -> <empty>
|
|
|
|
|
Rule 75 action_5 -> <empty>
|
|
|
|
|
Rule 76 action_6 -> <empty>
|
|
|
|
|
Rule 77 action_7 -> <empty>
|
|
|
|
|
Rule 78 action_8 -> <empty>
|
|
|
|
|
Rule 79 action_9 -> <empty>
|
|
|
|
|
Rule 80 action_10 -> <empty>
|
|
|
|
|
Rule 81 action_11 -> <empty>
|
|
|
|
|
Rule 82 action_12 -> <empty>
|
|
|
|
|
Rule 83 action_13 -> <empty>
|
|
|
|
|
Rule 84 action_14 -> <empty>
|
|
|
|
|
Rule 85 action_15 -> <empty>
|
|
|
|
|
Rule 86 action_16 -> <empty>
|
|
|
|
|
Rule 87 action_17 -> <empty>
|
|
|
|
|
Rule 88 action_18 -> <empty>
|
|
|
|
|
Rule 89 action_19 -> <empty>
|
|
|
|
|
Rule 90 action_20 -> <empty>
|
|
|
|
|
Rule 91 action_21 -> <empty>
|
|
|
|
|
Rule 92 action_22 -> <empty>
|
|
|
|
|
Rule 93 action_23 -> <empty>
|
|
|
|
|
Rule 94 action_24 -> <empty>
|
|
|
|
|
Rule 95 action_25 -> <empty>
|
|
|
|
|
Rule 96 action_26 -> <empty>
|
|
|
|
|
Rule 97 action_27 -> <empty>
|
|
|
|
|
Rule 98 action_28 -> <empty>
|
|
|
|
|
Rule 99 action_29 -> <empty>
|
|
|
|
|
Rule 100 action_30 -> <empty>
|
|
|
|
|
Rule 101 action_31 -> <empty>
|
|
|
|
|
Rule 102 action_32 -> <empty>
|
|
|
|
|
Rule 103 action_33 -> <empty>
|
|
|
|
|
Rule 104 action_34 -> <empty>
|
|
|
|
|
Rule 105 action_36 -> <empty>
|
|
|
|
|
Rule 106 action_setDim1 -> <empty>
|
|
|
|
|
Rule 107 action_setDim2 -> <empty>
|
2019-03-21 21:09:36 -06:00
|
|
|
|
|
|
|
|
Terminals, with rules where they appear
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and : 56
|
2019-03-21 21:09:36 -06:00
|
|
|
closedBra : 8 9 9
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen : 24 26 37 38 52 58
|
|
|
|
|
coma : 5 20 22 28 31 33 41
|
|
|
|
|
div : 50
|
2019-03-21 22:59:22 -06:00
|
|
|
do : 20 20 21 21
|
2019-03-21 21:09:36 -06:00
|
|
|
doubleColon : 2
|
2019-04-29 17:56:14 -05:00
|
|
|
doubleEquals : 65
|
|
|
|
|
elif : 38
|
|
|
|
|
else : 39
|
2019-03-21 22:59:22 -06:00
|
|
|
end : 1 11 19 20 21
|
2019-04-29 17:56:14 -05:00
|
|
|
endline : 36
|
2019-03-21 21:09:36 -06:00
|
|
|
equals : 15 20
|
|
|
|
|
error :
|
2019-03-21 22:59:22 -06:00
|
|
|
exit : 23
|
2019-04-24 22:10:01 -05:00
|
|
|
id : 1 4 5 11 16 20 24 25
|
2019-03-21 22:59:22 -06:00
|
|
|
if : 19 19
|
2019-04-29 17:56:14 -05:00
|
|
|
int : 8 9 9 41 61
|
2019-03-21 22:59:22 -06:00
|
|
|
integer : 6
|
2019-04-29 17:56:14 -05:00
|
|
|
less : 63
|
|
|
|
|
lessEquals : 67
|
|
|
|
|
minus : 46
|
|
|
|
|
more : 64
|
|
|
|
|
moreEquals : 68
|
|
|
|
|
mul : 49
|
|
|
|
|
not : 59
|
|
|
|
|
notEquals : 66
|
2019-03-21 21:09:36 -06:00
|
|
|
openBra : 8 9 9
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen : 24 26 37 38 52 58
|
|
|
|
|
or : 54
|
2019-03-21 21:09:36 -06:00
|
|
|
parens : 16
|
2019-04-29 17:56:14 -05:00
|
|
|
plus : 45
|
2019-03-21 22:59:22 -06:00
|
|
|
print : 18
|
|
|
|
|
program : 1 1
|
2019-04-29 17:56:14 -05:00
|
|
|
rea : 62
|
2019-03-21 22:59:22 -06:00
|
|
|
read : 17
|
|
|
|
|
real : 7
|
2019-04-24 22:10:01 -05:00
|
|
|
string : 35
|
2019-03-21 22:59:22 -06:00
|
|
|
subroutine : 11 11
|
|
|
|
|
swap : 22
|
2019-04-29 17:56:14 -05:00
|
|
|
then : 20 21 37 38
|
2019-03-21 21:09:36 -06:00
|
|
|
|
|
|
|
|
Nonterminals, with rules where they appear
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
AND : 53 54 56
|
|
|
|
|
B : 1 11 13 20 21 37 38 39
|
2019-04-24 22:10:01 -05:00
|
|
|
ComaEAOrEmpty : 26
|
2019-03-21 21:09:36 -06:00
|
|
|
Dim : 2
|
2019-04-24 22:10:01 -05:00
|
|
|
DimOrString : 32 33
|
2019-04-29 17:56:14 -05:00
|
|
|
Dimensional : 15 22 22 30 31 34 60
|
2019-04-24 22:10:01 -05:00
|
|
|
DimensionsOrEmpty : 25
|
2019-04-29 17:56:14 -05:00
|
|
|
EA : 15 20 20 26 28 44 52
|
|
|
|
|
EAParens : 47 48
|
|
|
|
|
EItem : 51 57 57
|
|
|
|
|
EL : 37 38 54 58 59
|
|
|
|
|
EQSymbols : 57
|
2019-03-21 21:09:36 -06:00
|
|
|
ElseOrEmpty : 19
|
2019-04-29 17:56:14 -05:00
|
|
|
Equality : 55 56
|
2019-03-21 21:09:36 -06:00
|
|
|
F : 1 11
|
|
|
|
|
IntOrEmpty : 20
|
2019-04-29 17:56:14 -05:00
|
|
|
MDSymbols : 48
|
|
|
|
|
MultDiv : 43 44 48
|
2019-04-24 22:10:01 -05:00
|
|
|
RDimOrString : 18 33
|
|
|
|
|
RDimensional : 17 31
|
2019-04-29 17:56:14 -05:00
|
|
|
Relif : 19 38
|
2019-03-21 21:09:36 -06:00
|
|
|
Rid : 2 5
|
|
|
|
|
S : 13
|
2019-04-29 17:56:14 -05:00
|
|
|
SumOrSub : 44
|
2019-03-21 21:09:36 -06:00
|
|
|
Tipo : 2
|
|
|
|
|
V : 1 2
|
2019-04-29 17:56:14 -05:00
|
|
|
action_1 : 30 31 34 60
|
|
|
|
|
action_10 : 54
|
|
|
|
|
action_11 : 56
|
|
|
|
|
action_12 : 56
|
|
|
|
|
action_13 : 57
|
|
|
|
|
action_14 : 57
|
|
|
|
|
action_15 : 59
|
2019-04-12 07:23:32 +00:00
|
|
|
action_16 : 19
|
2019-04-29 17:56:14 -05:00
|
|
|
action_17 : 37 38
|
|
|
|
|
action_18 : 38
|
|
|
|
|
action_19 : 39
|
|
|
|
|
action_2 : 61
|
2019-04-12 07:23:32 +00:00
|
|
|
action_20 : 19
|
2019-04-12 14:08:28 -05:00
|
|
|
action_21 : 21
|
|
|
|
|
action_22 : 21
|
|
|
|
|
action_23 : 23
|
2019-04-22 16:02:27 -05:00
|
|
|
action_24 : 20
|
|
|
|
|
action_25 : 20
|
|
|
|
|
action_26 : 20
|
2019-04-29 17:56:14 -05:00
|
|
|
action_27 : 42
|
|
|
|
|
action_28 : 41
|
2019-04-22 16:02:27 -05:00
|
|
|
action_29 : 20
|
2019-04-29 17:56:14 -05:00
|
|
|
action_2_rea : 62
|
|
|
|
|
action_3 : 44
|
2019-04-24 22:10:01 -05:00
|
|
|
action_30 : 8 9
|
|
|
|
|
action_31 : 9
|
|
|
|
|
action_32 : 2
|
2019-04-28 04:52:42 -05:00
|
|
|
action_33 : 34
|
2019-04-29 17:56:14 -05:00
|
|
|
action_34 : 35 36
|
|
|
|
|
action_36 : 30 31
|
|
|
|
|
action_4 : 44
|
|
|
|
|
action_5 : 48
|
|
|
|
|
action_6 : 48
|
2019-04-05 03:23:41 +00:00
|
|
|
action_7 : 15
|
|
|
|
|
action_8 : 15
|
2019-04-29 17:56:14 -05:00
|
|
|
action_9 : 54
|
2019-04-24 22:10:01 -05:00
|
|
|
action_addSymbols : 2
|
|
|
|
|
action_setDim1 : 26
|
|
|
|
|
action_setDim2 : 28
|
2019-03-21 21:09:36 -06:00
|
|
|
programa : 0
|
|
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
Parsing method: LALR
|
|
|
|
|
|
|
|
|
|
state 0
|
|
|
|
|
|
|
|
|
|
(0) S' -> . programa
|
|
|
|
|
(1) programa -> . program id V F B end program
|
|
|
|
|
|
|
|
|
|
program shift and go to state 2
|
|
|
|
|
|
|
|
|
|
programa shift and go to state 1
|
|
|
|
|
|
|
|
|
|
state 1
|
|
|
|
|
|
|
|
|
|
(0) S' -> programa .
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 2
|
|
|
|
|
|
|
|
|
|
(1) programa -> program . id V F B end program
|
|
|
|
|
|
|
|
|
|
id shift and go to state 3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 3
|
|
|
|
|
|
|
|
|
|
(1) programa -> program id . V F B end program
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> . V Tipo Dim doubleColon Rid action_addSymbols action_32
|
2019-03-21 22:59:22 -06:00
|
|
|
(3) V -> .
|
|
|
|
|
|
|
|
|
|
integer reduce using rule 3 (V -> .)
|
|
|
|
|
real reduce using rule 3 (V -> .)
|
|
|
|
|
subroutine reduce using rule 3 (V -> .)
|
|
|
|
|
end reduce using rule 3 (V -> .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 3 (V -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 3 (V -> .)
|
|
|
|
|
print reduce using rule 3 (V -> .)
|
|
|
|
|
if reduce using rule 3 (V -> .)
|
|
|
|
|
do reduce using rule 3 (V -> .)
|
|
|
|
|
swap reduce using rule 3 (V -> .)
|
|
|
|
|
exit reduce using rule 3 (V -> .)
|
|
|
|
|
|
|
|
|
|
V shift and go to state 4
|
|
|
|
|
|
|
|
|
|
state 4
|
|
|
|
|
|
|
|
|
|
(1) programa -> program id V . F B end program
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> V . Tipo Dim doubleColon Rid action_addSymbols action_32
|
2019-03-21 22:59:22 -06:00
|
|
|
(11) F -> . F subroutine id B end subroutine
|
|
|
|
|
(12) F -> .
|
|
|
|
|
(6) Tipo -> . integer
|
|
|
|
|
(7) Tipo -> . real
|
|
|
|
|
|
|
|
|
|
subroutine reduce using rule 12 (F -> .)
|
|
|
|
|
end reduce using rule 12 (F -> .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 12 (F -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 12 (F -> .)
|
|
|
|
|
print reduce using rule 12 (F -> .)
|
|
|
|
|
if reduce using rule 12 (F -> .)
|
|
|
|
|
do reduce using rule 12 (F -> .)
|
|
|
|
|
swap reduce using rule 12 (F -> .)
|
|
|
|
|
exit reduce using rule 12 (F -> .)
|
|
|
|
|
integer shift and go to state 7
|
|
|
|
|
real shift and go to state 8
|
|
|
|
|
|
|
|
|
|
F shift and go to state 5
|
|
|
|
|
Tipo shift and go to state 6
|
|
|
|
|
|
|
|
|
|
state 5
|
|
|
|
|
|
|
|
|
|
(1) programa -> program id V F . B end program
|
|
|
|
|
(11) F -> F . subroutine id B end subroutine
|
|
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
|
|
|
|
|
|
|
|
|
subroutine shift and go to state 10
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 14 (B -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
|
|
|
|
|
|
|
|
|
B shift and go to state 9
|
|
|
|
|
|
|
|
|
|
state 6
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> V Tipo . Dim doubleColon Rid action_addSymbols action_32
|
|
|
|
|
(8) Dim -> . openBra int action_30 closedBra
|
|
|
|
|
(9) Dim -> . openBra int action_30 closedBra openBra int action_31 closedBra
|
2019-03-21 22:59:22 -06:00
|
|
|
(10) Dim -> .
|
|
|
|
|
|
|
|
|
|
openBra shift and go to state 12
|
|
|
|
|
doubleColon reduce using rule 10 (Dim -> .)
|
|
|
|
|
|
|
|
|
|
Dim shift and go to state 11
|
|
|
|
|
|
|
|
|
|
state 7
|
|
|
|
|
|
|
|
|
|
(6) Tipo -> integer .
|
|
|
|
|
|
|
|
|
|
openBra reduce using rule 6 (Tipo -> integer .)
|
|
|
|
|
doubleColon reduce using rule 6 (Tipo -> integer .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 8
|
|
|
|
|
|
|
|
|
|
(7) Tipo -> real .
|
|
|
|
|
|
|
|
|
|
openBra reduce using rule 7 (Tipo -> real .)
|
|
|
|
|
doubleColon reduce using rule 7 (Tipo -> real .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 9
|
|
|
|
|
|
|
|
|
|
(1) programa -> program id V F B . end program
|
|
|
|
|
(13) B -> B . S
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
2019-03-21 23:13:56 -06:00
|
|
|
(16) S -> . id parens
|
2019-03-21 22:59:22 -06:00
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
end shift and go to state 14
|
|
|
|
|
id shift and go to state 13
|
2019-03-21 23:13:56 -06:00
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
|
|
|
|
|
|
|
|
|
state 10
|
|
|
|
|
|
|
|
|
|
(11) F -> F subroutine . id B end subroutine
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 23
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
state 11
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> V Tipo Dim . doubleColon Rid action_addSymbols action_32
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
doubleColon shift and go to state 24
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
state 12
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(8) Dim -> openBra . int action_30 closedBra
|
|
|
|
|
(9) Dim -> openBra . int action_30 closedBra openBra int action_31 closedBra
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
int shift and go to state 25
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
state 13
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
(16) S -> id . parens
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> id . openParen closedParen
|
|
|
|
|
(25) Dimensional -> id . DimensionsOrEmpty
|
|
|
|
|
(26) DimensionsOrEmpty -> . openParen EA action_setDim1 ComaEAOrEmpty closedParen
|
|
|
|
|
(27) DimensionsOrEmpty -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
parens shift and go to state 26
|
2019-04-24 22:10:01 -05:00
|
|
|
openParen shift and go to state 27
|
|
|
|
|
equals reduce using rule 27 (DimensionsOrEmpty -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
DimensionsOrEmpty shift and go to state 28
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 14
|
|
|
|
|
|
|
|
|
|
(1) programa -> program id V F B end . program
|
|
|
|
|
|
|
|
|
|
program shift and go to state 29
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 15
|
|
|
|
|
|
|
|
|
|
(13) B -> B S .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 13 (B -> B S .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 13 (B -> B S .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 13 (B -> B S .)
|
|
|
|
|
print reduce using rule 13 (B -> B S .)
|
|
|
|
|
if reduce using rule 13 (B -> B S .)
|
|
|
|
|
do reduce using rule 13 (B -> B S .)
|
|
|
|
|
swap reduce using rule 13 (B -> B S .)
|
|
|
|
|
exit reduce using rule 13 (B -> B S .)
|
|
|
|
|
elif reduce using rule 13 (B -> B S .)
|
|
|
|
|
else reduce using rule 13 (B -> B S .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 16
|
|
|
|
|
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> Dimensional . action_7 equals EA action_8
|
2019-04-29 17:56:14 -05:00
|
|
|
(77) action_7 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
equals reduce using rule 77 (action_7 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-05 03:23:41 +00:00
|
|
|
action_7 shift and go to state 30
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 17
|
|
|
|
|
|
|
|
|
|
(17) S -> read . RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(30) RDimensional -> . Dimensional action_1 action_36
|
|
|
|
|
(31) RDimensional -> . RDimensional coma Dimensional action_1 action_36
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
RDimensional shift and go to state 31
|
|
|
|
|
Dimensional shift and go to state 32
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 18
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> print . RDimOrString
|
2019-04-24 22:10:01 -05:00
|
|
|
(32) RDimOrString -> . DimOrString
|
|
|
|
|
(33) RDimOrString -> . RDimOrString coma DimOrString
|
2019-04-28 04:52:42 -05:00
|
|
|
(34) DimOrString -> . Dimensional action_1 action_33
|
|
|
|
|
(35) DimOrString -> . string action_34
|
2019-04-29 17:56:14 -05:00
|
|
|
(36) DimOrString -> . endline action_34
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
string shift and go to state 37
|
2019-04-29 17:56:14 -05:00
|
|
|
endline shift and go to state 38
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
RDimOrString shift and go to state 34
|
|
|
|
|
DimOrString shift and go to state 35
|
|
|
|
|
Dimensional shift and go to state 36
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 19
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> if . action_16 Relif ElseOrEmpty end if action_20
|
2019-04-29 17:56:14 -05:00
|
|
|
(86) action_16 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 86 (action_16 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_16 shift and go to state 39
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 20
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do . id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> do . then action_21 B action_22 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
id shift and go to state 40
|
|
|
|
|
then shift and go to state 41
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 21
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(22) S -> swap . Dimensional coma Dimensional
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Dimensional shift and go to state 42
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> exit . action_23
|
2019-04-29 17:56:14 -05:00
|
|
|
(93) action_23 -> .
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end reduce using rule 93 (action_23 -> .)
|
|
|
|
|
id reduce using rule 93 (action_23 -> .)
|
|
|
|
|
read reduce using rule 93 (action_23 -> .)
|
|
|
|
|
print reduce using rule 93 (action_23 -> .)
|
|
|
|
|
if reduce using rule 93 (action_23 -> .)
|
|
|
|
|
do reduce using rule 93 (action_23 -> .)
|
|
|
|
|
swap reduce using rule 93 (action_23 -> .)
|
|
|
|
|
exit reduce using rule 93 (action_23 -> .)
|
|
|
|
|
elif reduce using rule 93 (action_23 -> .)
|
|
|
|
|
else reduce using rule 93 (action_23 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_23 shift and go to state 43
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 23
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(11) F -> F subroutine id . B end subroutine
|
|
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 14 (B -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
B shift and go to state 44
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 24
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> V Tipo Dim doubleColon . Rid action_addSymbols action_32
|
2019-03-21 22:59:22 -06:00
|
|
|
(4) Rid -> . id
|
|
|
|
|
(5) Rid -> . Rid coma id
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
id shift and go to state 46
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Rid shift and go to state 45
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 25
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(8) Dim -> openBra int . action_30 closedBra
|
|
|
|
|
(9) Dim -> openBra int . action_30 closedBra openBra int action_31 closedBra
|
2019-04-29 17:56:14 -05:00
|
|
|
(100) action_30 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedBra reduce using rule 100 (action_30 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_30 shift and go to state 47
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 26
|
|
|
|
|
|
|
|
|
|
(16) S -> id parens .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 16 (S -> id parens .)
|
|
|
|
|
id reduce using rule 16 (S -> id parens .)
|
|
|
|
|
read reduce using rule 16 (S -> id parens .)
|
|
|
|
|
print reduce using rule 16 (S -> id parens .)
|
|
|
|
|
if reduce using rule 16 (S -> id parens .)
|
|
|
|
|
do reduce using rule 16 (S -> id parens .)
|
|
|
|
|
swap reduce using rule 16 (S -> id parens .)
|
|
|
|
|
exit reduce using rule 16 (S -> id parens .)
|
|
|
|
|
elif reduce using rule 16 (S -> id parens .)
|
|
|
|
|
else reduce using rule 16 (S -> id parens .)
|
|
|
|
|
|
|
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
state 27
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> id openParen . closedParen
|
|
|
|
|
(26) DimensionsOrEmpty -> openParen . EA action_setDim1 ComaEAOrEmpty closedParen
|
2019-04-29 17:56:14 -05:00
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen shift and go to state 49
|
|
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-24 22:10:01 -05:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EA shift and go to state 50
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 28
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> id DimensionsOrEmpty .
|
|
|
|
|
|
|
|
|
|
equals reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
coma reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
end reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
id reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
read reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
print reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
if reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
do reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
swap reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
exit reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
elif reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
else reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
mul reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
div reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
plus reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
minus reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
closedParen reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
less reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
more reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
doubleEquals reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
notEquals reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
lessEquals reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
moreEquals reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
then reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
and reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
|
|
|
|
or reduce using rule 25 (Dimensional -> id DimensionsOrEmpty .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
state 29
|
|
|
|
|
|
|
|
|
|
(1) programa -> program id V F B end program .
|
|
|
|
|
|
|
|
|
|
$end reduce using rule 1 (programa -> program id V F B end program .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 30
|
|
|
|
|
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> Dimensional action_7 . equals EA action_8
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
equals shift and go to state 57
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
state 31
|
|
|
|
|
|
|
|
|
|
(17) S -> read RDimensional .
|
2019-04-29 17:56:14 -05:00
|
|
|
(31) RDimensional -> RDimensional . coma Dimensional action_1 action_36
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
end reduce using rule 17 (S -> read RDimensional .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 17 (S -> read RDimensional .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
print reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
if reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
do reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
swap reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
exit reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
elif reduce using rule 17 (S -> read RDimensional .)
|
|
|
|
|
else reduce using rule 17 (S -> read RDimensional .)
|
2019-04-29 17:56:14 -05:00
|
|
|
coma shift and go to state 58
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 32
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(30) RDimensional -> Dimensional . action_1 action_36
|
|
|
|
|
(70) action_1 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma reduce using rule 70 (action_1 -> .)
|
|
|
|
|
end reduce using rule 70 (action_1 -> .)
|
|
|
|
|
id reduce using rule 70 (action_1 -> .)
|
|
|
|
|
read reduce using rule 70 (action_1 -> .)
|
|
|
|
|
print reduce using rule 70 (action_1 -> .)
|
|
|
|
|
if reduce using rule 70 (action_1 -> .)
|
|
|
|
|
do reduce using rule 70 (action_1 -> .)
|
|
|
|
|
swap reduce using rule 70 (action_1 -> .)
|
|
|
|
|
exit reduce using rule 70 (action_1 -> .)
|
|
|
|
|
elif reduce using rule 70 (action_1 -> .)
|
|
|
|
|
else reduce using rule 70 (action_1 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_1 shift and go to state 59
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
state 33
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> id . DimensionsOrEmpty
|
|
|
|
|
(26) DimensionsOrEmpty -> . openParen EA action_setDim1 ComaEAOrEmpty closedParen
|
|
|
|
|
(27) DimensionsOrEmpty -> .
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 60
|
2019-04-24 22:10:01 -05:00
|
|
|
coma reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
end reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
id reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
read reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
print reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
if reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
do reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
swap reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
exit reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
elif reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
else reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
mul reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
div reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
plus reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
minus reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
closedParen reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
less reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
more reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
doubleEquals reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
notEquals reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
lessEquals reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
moreEquals reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
then reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
and reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
or reduce using rule 27 (DimensionsOrEmpty -> .)
|
|
|
|
|
|
|
|
|
|
DimensionsOrEmpty shift and go to state 28
|
2019-03-21 23:13:56 -06:00
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
state 34
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> print RDimOrString .
|
2019-04-24 22:10:01 -05:00
|
|
|
(33) RDimOrString -> RDimOrString . coma DimOrString
|
2019-04-29 17:56:14 -05:00
|
|
|
|
|
|
|
|
end reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
id reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
read reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
print reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
if reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
do reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
swap reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
exit reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
elif reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
else reduce using rule 18 (S -> print RDimOrString .)
|
|
|
|
|
coma shift and go to state 61
|
|
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 35
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(32) RDimOrString -> DimOrString .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
coma reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
end reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
id reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
read reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
print reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
if reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
do reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
swap reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
exit reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
elif reduce using rule 32 (RDimOrString -> DimOrString .)
|
|
|
|
|
else reduce using rule 32 (RDimOrString -> DimOrString .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
state 36
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
(34) DimOrString -> Dimensional . action_1 action_33
|
2019-04-29 17:56:14 -05:00
|
|
|
(70) action_1 -> .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 70 (action_1 -> .)
|
|
|
|
|
end reduce using rule 70 (action_1 -> .)
|
|
|
|
|
id reduce using rule 70 (action_1 -> .)
|
|
|
|
|
read reduce using rule 70 (action_1 -> .)
|
|
|
|
|
print reduce using rule 70 (action_1 -> .)
|
|
|
|
|
if reduce using rule 70 (action_1 -> .)
|
|
|
|
|
do reduce using rule 70 (action_1 -> .)
|
|
|
|
|
swap reduce using rule 70 (action_1 -> .)
|
|
|
|
|
exit reduce using rule 70 (action_1 -> .)
|
|
|
|
|
elif reduce using rule 70 (action_1 -> .)
|
|
|
|
|
else reduce using rule 70 (action_1 -> .)
|
|
|
|
|
|
|
|
|
|
action_1 shift and go to state 62
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 37
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
(35) DimOrString -> string . action_34
|
2019-04-29 17:56:14 -05:00
|
|
|
(104) action_34 -> .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 104 (action_34 -> .)
|
|
|
|
|
end reduce using rule 104 (action_34 -> .)
|
|
|
|
|
id reduce using rule 104 (action_34 -> .)
|
|
|
|
|
read reduce using rule 104 (action_34 -> .)
|
|
|
|
|
print reduce using rule 104 (action_34 -> .)
|
|
|
|
|
if reduce using rule 104 (action_34 -> .)
|
|
|
|
|
do reduce using rule 104 (action_34 -> .)
|
|
|
|
|
swap reduce using rule 104 (action_34 -> .)
|
|
|
|
|
exit reduce using rule 104 (action_34 -> .)
|
|
|
|
|
elif reduce using rule 104 (action_34 -> .)
|
|
|
|
|
else reduce using rule 104 (action_34 -> .)
|
|
|
|
|
|
|
|
|
|
action_34 shift and go to state 63
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 38
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(36) DimOrString -> endline . action_34
|
|
|
|
|
(104) action_34 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma reduce using rule 104 (action_34 -> .)
|
|
|
|
|
end reduce using rule 104 (action_34 -> .)
|
|
|
|
|
id reduce using rule 104 (action_34 -> .)
|
|
|
|
|
read reduce using rule 104 (action_34 -> .)
|
|
|
|
|
print reduce using rule 104 (action_34 -> .)
|
|
|
|
|
if reduce using rule 104 (action_34 -> .)
|
|
|
|
|
do reduce using rule 104 (action_34 -> .)
|
|
|
|
|
swap reduce using rule 104 (action_34 -> .)
|
|
|
|
|
exit reduce using rule 104 (action_34 -> .)
|
|
|
|
|
elif reduce using rule 104 (action_34 -> .)
|
|
|
|
|
else reduce using rule 104 (action_34 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_34 shift and go to state 64
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
state 39
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(19) S -> if action_16 . Relif ElseOrEmpty end if action_20
|
|
|
|
|
(37) Relif -> . openParen EL closedParen action_17 then B
|
|
|
|
|
(38) Relif -> . Relif elif action_18 openParen EL closedParen action_17 then B
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 66
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Relif shift and go to state 65
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
state 40
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(20) S -> do id . action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
|
|
|
|
(94) action_24 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
equals reduce using rule 94 (action_24 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_24 shift and go to state 67
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
state 41
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(21) S -> do then . action_21 B action_22 end do
|
|
|
|
|
(91) action_21 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
id reduce using rule 91 (action_21 -> .)
|
|
|
|
|
read reduce using rule 91 (action_21 -> .)
|
|
|
|
|
print reduce using rule 91 (action_21 -> .)
|
|
|
|
|
if reduce using rule 91 (action_21 -> .)
|
|
|
|
|
do reduce using rule 91 (action_21 -> .)
|
|
|
|
|
swap reduce using rule 91 (action_21 -> .)
|
|
|
|
|
exit reduce using rule 91 (action_21 -> .)
|
|
|
|
|
end reduce using rule 91 (action_21 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_21 shift and go to state 68
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
state 42
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(22) S -> swap Dimensional . coma Dimensional
|
|
|
|
|
|
|
|
|
|
coma shift and go to state 69
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 43
|
|
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> exit action_23 .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
id reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
read reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
print reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
if reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
do reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
swap reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
exit reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
elif reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
else reduce using rule 23 (S -> exit action_23 .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 44
|
2019-04-12 14:08:28 -05:00
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
(11) F -> F subroutine id B . end subroutine
|
|
|
|
|
(13) B -> B . S
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
2019-03-21 23:13:56 -06:00
|
|
|
(16) S -> . id parens
|
2019-03-21 22:59:22 -06:00
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end shift and go to state 70
|
2019-03-21 22:59:22 -06:00
|
|
|
id shift and go to state 13
|
2019-03-21 23:13:56 -06:00
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 45
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> V Tipo Dim doubleColon Rid . action_addSymbols action_32
|
2019-03-21 22:59:22 -06:00
|
|
|
(5) Rid -> Rid . coma id
|
2019-04-29 17:56:14 -05:00
|
|
|
(69) action_addSymbols -> .
|
|
|
|
|
|
|
|
|
|
coma shift and go to state 72
|
|
|
|
|
integer reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
real reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
subroutine reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
end reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
id reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
read reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
print reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
if reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
do reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
swap reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
exit reduce using rule 69 (action_addSymbols -> .)
|
|
|
|
|
|
|
|
|
|
action_addSymbols shift and go to state 71
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 46
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(4) Rid -> id .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 4 (Rid -> id .)
|
|
|
|
|
integer reduce using rule 4 (Rid -> id .)
|
|
|
|
|
real reduce using rule 4 (Rid -> id .)
|
|
|
|
|
subroutine reduce using rule 4 (Rid -> id .)
|
|
|
|
|
end reduce using rule 4 (Rid -> id .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 4 (Rid -> id .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 4 (Rid -> id .)
|
|
|
|
|
print reduce using rule 4 (Rid -> id .)
|
|
|
|
|
if reduce using rule 4 (Rid -> id .)
|
|
|
|
|
do reduce using rule 4 (Rid -> id .)
|
|
|
|
|
swap reduce using rule 4 (Rid -> id .)
|
|
|
|
|
exit reduce using rule 4 (Rid -> id .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 47
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(8) Dim -> openBra int action_30 . closedBra
|
|
|
|
|
(9) Dim -> openBra int action_30 . closedBra openBra int action_31 closedBra
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedBra shift and go to state 73
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 48
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(52) EAParens -> openParen . EA closedParen
|
|
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EA shift and go to state 74
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 49
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> id openParen closedParen .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
end reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
id reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
read reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
print reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
if reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
do reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
swap reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
exit reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
elif reduce using rule 24 (S -> id openParen closedParen .)
|
|
|
|
|
else reduce using rule 24 (S -> id openParen closedParen .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 50
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(26) DimensionsOrEmpty -> openParen EA . action_setDim1 ComaEAOrEmpty closedParen
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA . SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(106) action_setDim1 -> .
|
|
|
|
|
(45) SumOrSub -> . plus
|
|
|
|
|
(46) SumOrSub -> . minus
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma reduce using rule 106 (action_setDim1 -> .)
|
|
|
|
|
closedParen reduce using rule 106 (action_setDim1 -> .)
|
|
|
|
|
plus shift and go to state 77
|
|
|
|
|
minus shift and go to state 78
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_setDim1 shift and go to state 75
|
|
|
|
|
SumOrSub shift and go to state 76
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
state 51
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(43) EA -> MultDiv .
|
|
|
|
|
(48) MultDiv -> MultDiv . MDSymbols action_5 EAParens action_6
|
|
|
|
|
(49) MDSymbols -> . mul
|
|
|
|
|
(50) MDSymbols -> . div
|
|
|
|
|
|
|
|
|
|
plus reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
minus reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
coma reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
closedParen reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
end reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
id reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
read reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
print reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
if reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
do reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
swap reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
exit reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
elif reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
else reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
then reduce using rule 43 (EA -> MultDiv .)
|
|
|
|
|
mul shift and go to state 80
|
|
|
|
|
div shift and go to state 81
|
|
|
|
|
|
|
|
|
|
MDSymbols shift and go to state 79
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
state 52
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(47) MultDiv -> EAParens .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
div reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
plus reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
minus reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
coma reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
closedParen reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
end reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
id reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
read reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
print reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
if reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
do reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
swap reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
exit reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
elif reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
else reduce using rule 47 (MultDiv -> EAParens .)
|
|
|
|
|
then reduce using rule 47 (MultDiv -> EAParens .)
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
state 53
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(51) EAParens -> EItem .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
div reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
plus reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
minus reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
coma reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
closedParen reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
end reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
id reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
read reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
print reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
if reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
do reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
swap reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
exit reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
elif reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
else reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
then reduce using rule 51 (EAParens -> EItem .)
|
|
|
|
|
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(60) EItem -> Dimensional . action_1
|
|
|
|
|
(70) action_1 -> .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 70 (action_1 -> .)
|
|
|
|
|
div reduce using rule 70 (action_1 -> .)
|
|
|
|
|
plus reduce using rule 70 (action_1 -> .)
|
|
|
|
|
minus reduce using rule 70 (action_1 -> .)
|
|
|
|
|
coma reduce using rule 70 (action_1 -> .)
|
|
|
|
|
closedParen reduce using rule 70 (action_1 -> .)
|
|
|
|
|
end reduce using rule 70 (action_1 -> .)
|
|
|
|
|
id reduce using rule 70 (action_1 -> .)
|
|
|
|
|
read reduce using rule 70 (action_1 -> .)
|
|
|
|
|
print reduce using rule 70 (action_1 -> .)
|
|
|
|
|
if reduce using rule 70 (action_1 -> .)
|
|
|
|
|
do reduce using rule 70 (action_1 -> .)
|
|
|
|
|
swap reduce using rule 70 (action_1 -> .)
|
|
|
|
|
exit reduce using rule 70 (action_1 -> .)
|
|
|
|
|
elif reduce using rule 70 (action_1 -> .)
|
|
|
|
|
else reduce using rule 70 (action_1 -> .)
|
|
|
|
|
less reduce using rule 70 (action_1 -> .)
|
|
|
|
|
more reduce using rule 70 (action_1 -> .)
|
|
|
|
|
doubleEquals reduce using rule 70 (action_1 -> .)
|
|
|
|
|
notEquals reduce using rule 70 (action_1 -> .)
|
|
|
|
|
lessEquals reduce using rule 70 (action_1 -> .)
|
|
|
|
|
moreEquals reduce using rule 70 (action_1 -> .)
|
|
|
|
|
then reduce using rule 70 (action_1 -> .)
|
|
|
|
|
and reduce using rule 70 (action_1 -> .)
|
|
|
|
|
or reduce using rule 70 (action_1 -> .)
|
|
|
|
|
|
|
|
|
|
action_1 shift and go to state 82
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
state 55
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(61) EItem -> int . action_2
|
|
|
|
|
(71) action_2 -> .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 71 (action_2 -> .)
|
|
|
|
|
div reduce using rule 71 (action_2 -> .)
|
|
|
|
|
plus reduce using rule 71 (action_2 -> .)
|
|
|
|
|
minus reduce using rule 71 (action_2 -> .)
|
|
|
|
|
coma reduce using rule 71 (action_2 -> .)
|
|
|
|
|
closedParen reduce using rule 71 (action_2 -> .)
|
|
|
|
|
end reduce using rule 71 (action_2 -> .)
|
|
|
|
|
id reduce using rule 71 (action_2 -> .)
|
|
|
|
|
read reduce using rule 71 (action_2 -> .)
|
|
|
|
|
print reduce using rule 71 (action_2 -> .)
|
|
|
|
|
if reduce using rule 71 (action_2 -> .)
|
|
|
|
|
do reduce using rule 71 (action_2 -> .)
|
|
|
|
|
swap reduce using rule 71 (action_2 -> .)
|
|
|
|
|
exit reduce using rule 71 (action_2 -> .)
|
|
|
|
|
elif reduce using rule 71 (action_2 -> .)
|
|
|
|
|
else reduce using rule 71 (action_2 -> .)
|
|
|
|
|
less reduce using rule 71 (action_2 -> .)
|
|
|
|
|
more reduce using rule 71 (action_2 -> .)
|
|
|
|
|
doubleEquals reduce using rule 71 (action_2 -> .)
|
|
|
|
|
notEquals reduce using rule 71 (action_2 -> .)
|
|
|
|
|
lessEquals reduce using rule 71 (action_2 -> .)
|
|
|
|
|
moreEquals reduce using rule 71 (action_2 -> .)
|
|
|
|
|
then reduce using rule 71 (action_2 -> .)
|
|
|
|
|
and reduce using rule 71 (action_2 -> .)
|
|
|
|
|
or reduce using rule 71 (action_2 -> .)
|
|
|
|
|
|
|
|
|
|
action_2 shift and go to state 83
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
state 56
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(62) EItem -> rea . action_2_rea
|
|
|
|
|
(72) action_2_rea -> .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
div reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
plus reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
minus reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
coma reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
closedParen reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
end reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
id reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
read reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
print reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
if reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
do reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
swap reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
exit reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
elif reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
else reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
less reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
more reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
doubleEquals reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
notEquals reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
lessEquals reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
moreEquals reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
then reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
and reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
or reduce using rule 72 (action_2_rea -> .)
|
|
|
|
|
|
|
|
|
|
action_2_rea shift and go to state 84
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
state 57
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(15) S -> Dimensional action_7 equals . EA action_8
|
|
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Dimensional shift and go to state 54
|
|
|
|
|
EA shift and go to state 85
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
state 58
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(31) RDimensional -> RDimensional coma . Dimensional action_1 action_36
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
|
|
|
|
id shift and go to state 33
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Dimensional shift and go to state 86
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
state 59
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(30) RDimensional -> Dimensional action_1 . action_36
|
|
|
|
|
(105) action_36 -> .
|
2019-04-28 04:52:42 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma reduce using rule 105 (action_36 -> .)
|
|
|
|
|
end reduce using rule 105 (action_36 -> .)
|
|
|
|
|
id reduce using rule 105 (action_36 -> .)
|
|
|
|
|
read reduce using rule 105 (action_36 -> .)
|
|
|
|
|
print reduce using rule 105 (action_36 -> .)
|
|
|
|
|
if reduce using rule 105 (action_36 -> .)
|
|
|
|
|
do reduce using rule 105 (action_36 -> .)
|
|
|
|
|
swap reduce using rule 105 (action_36 -> .)
|
|
|
|
|
exit reduce using rule 105 (action_36 -> .)
|
|
|
|
|
elif reduce using rule 105 (action_36 -> .)
|
|
|
|
|
else reduce using rule 105 (action_36 -> .)
|
2019-04-28 04:52:42 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_36 shift and go to state 87
|
2019-04-28 04:52:42 -05:00
|
|
|
|
|
|
|
|
state 60
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(26) DimensionsOrEmpty -> openParen . EA action_setDim1 ComaEAOrEmpty closedParen
|
|
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
|
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
|
|
|
|
id shift and go to state 33
|
|
|
|
|
|
|
|
|
|
EA shift and go to state 50
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
|
|
|
|
|
|
|
|
|
state 61
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(33) RDimOrString -> RDimOrString coma . DimOrString
|
2019-04-28 04:52:42 -05:00
|
|
|
(34) DimOrString -> . Dimensional action_1 action_33
|
|
|
|
|
(35) DimOrString -> . string action_34
|
2019-04-29 17:56:14 -05:00
|
|
|
(36) DimOrString -> . endline action_34
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
string shift and go to state 37
|
2019-04-29 17:56:14 -05:00
|
|
|
endline shift and go to state 38
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
DimOrString shift and go to state 88
|
2019-03-21 22:59:22 -06:00
|
|
|
Dimensional shift and go to state 36
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 62
|
2019-04-28 04:52:42 -05:00
|
|
|
|
|
|
|
|
(34) DimOrString -> Dimensional action_1 . action_33
|
2019-04-29 17:56:14 -05:00
|
|
|
(103) action_33 -> .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 103 (action_33 -> .)
|
|
|
|
|
end reduce using rule 103 (action_33 -> .)
|
|
|
|
|
id reduce using rule 103 (action_33 -> .)
|
|
|
|
|
read reduce using rule 103 (action_33 -> .)
|
|
|
|
|
print reduce using rule 103 (action_33 -> .)
|
|
|
|
|
if reduce using rule 103 (action_33 -> .)
|
|
|
|
|
do reduce using rule 103 (action_33 -> .)
|
|
|
|
|
swap reduce using rule 103 (action_33 -> .)
|
|
|
|
|
exit reduce using rule 103 (action_33 -> .)
|
|
|
|
|
elif reduce using rule 103 (action_33 -> .)
|
|
|
|
|
else reduce using rule 103 (action_33 -> .)
|
|
|
|
|
|
|
|
|
|
action_33 shift and go to state 89
|
2019-04-28 04:52:42 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 63
|
2019-04-28 04:52:42 -05:00
|
|
|
|
|
|
|
|
(35) DimOrString -> string action_34 .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
end reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
id reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
read reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
print reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
if reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
do reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
swap reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
exit reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
elif reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
else reduce using rule 35 (DimOrString -> string action_34 .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 64
|
|
|
|
|
|
|
|
|
|
(36) DimOrString -> endline action_34 .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
end reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
id reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
read reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
print reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
if reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
do reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
swap reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
exit reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
elif reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
else reduce using rule 36 (DimOrString -> endline action_34 .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 65
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> if action_16 Relif . ElseOrEmpty end if action_20
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif . elif action_18 openParen EL closedParen action_17 then B
|
|
|
|
|
(39) ElseOrEmpty -> . else action_19 B
|
|
|
|
|
(40) ElseOrEmpty -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
elif shift and go to state 91
|
|
|
|
|
else shift and go to state 92
|
|
|
|
|
end reduce using rule 40 (ElseOrEmpty -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
ElseOrEmpty shift and go to state 90
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 66
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(37) Relif -> openParen . EL closedParen action_17 then B
|
|
|
|
|
(53) EL -> . AND
|
|
|
|
|
(54) EL -> . EL or action_10 AND action_9
|
|
|
|
|
(55) AND -> . Equality
|
|
|
|
|
(56) AND -> . AND and action_12 Equality action_11
|
|
|
|
|
(57) Equality -> . EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
(58) Equality -> . openParen EL closedParen
|
|
|
|
|
(59) Equality -> . not EL action_15
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 93
|
|
|
|
|
not shift and go to state 98
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EL shift and go to state 94
|
|
|
|
|
AND shift and go to state 95
|
|
|
|
|
Equality shift and go to state 96
|
|
|
|
|
EItem shift and go to state 97
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 67
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 . equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
equals shift and go to state 99
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 68
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> do then action_21 . B action_22 end do
|
|
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
id reduce using rule 14 (B -> .)
|
|
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
B shift and go to state 100
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 69
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(22) S -> swap Dimensional coma . Dimensional
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Dimensional shift and go to state 101
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 70
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(11) F -> F subroutine id B end . subroutine
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
subroutine shift and go to state 102
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 71
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(2) V -> V Tipo Dim doubleColon Rid action_addSymbols . action_32
|
2019-04-29 17:56:14 -05:00
|
|
|
(102) action_32 -> .
|
|
|
|
|
|
|
|
|
|
integer reduce using rule 102 (action_32 -> .)
|
|
|
|
|
real reduce using rule 102 (action_32 -> .)
|
|
|
|
|
subroutine reduce using rule 102 (action_32 -> .)
|
|
|
|
|
end reduce using rule 102 (action_32 -> .)
|
|
|
|
|
id reduce using rule 102 (action_32 -> .)
|
|
|
|
|
read reduce using rule 102 (action_32 -> .)
|
|
|
|
|
print reduce using rule 102 (action_32 -> .)
|
|
|
|
|
if reduce using rule 102 (action_32 -> .)
|
|
|
|
|
do reduce using rule 102 (action_32 -> .)
|
|
|
|
|
swap reduce using rule 102 (action_32 -> .)
|
|
|
|
|
exit reduce using rule 102 (action_32 -> .)
|
|
|
|
|
|
|
|
|
|
action_32 shift and go to state 103
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 72
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(5) Rid -> Rid coma . id
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
id shift and go to state 104
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 73
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(8) Dim -> openBra int action_30 closedBra .
|
|
|
|
|
(9) Dim -> openBra int action_30 closedBra . openBra int action_31 closedBra
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
doubleColon reduce using rule 8 (Dim -> openBra int action_30 closedBra .)
|
2019-04-29 17:56:14 -05:00
|
|
|
openBra shift and go to state 105
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 74
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(52) EAParens -> openParen EA . closedParen
|
|
|
|
|
(44) EA -> EA . SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(45) SumOrSub -> . plus
|
|
|
|
|
(46) SumOrSub -> . minus
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen shift and go to state 106
|
|
|
|
|
plus shift and go to state 77
|
|
|
|
|
minus shift and go to state 78
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
SumOrSub shift and go to state 76
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 75
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(26) DimensionsOrEmpty -> openParen EA action_setDim1 . ComaEAOrEmpty closedParen
|
|
|
|
|
(28) ComaEAOrEmpty -> . coma EA action_setDim2
|
|
|
|
|
(29) ComaEAOrEmpty -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma shift and go to state 108
|
2019-04-24 22:10:01 -05:00
|
|
|
closedParen reduce using rule 29 (ComaEAOrEmpty -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
ComaEAOrEmpty shift and go to state 107
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 76
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA SumOrSub . action_3 MultDiv action_4
|
|
|
|
|
(73) action_3 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 73 (action_3 -> .)
|
|
|
|
|
int reduce using rule 73 (action_3 -> .)
|
|
|
|
|
rea reduce using rule 73 (action_3 -> .)
|
|
|
|
|
id reduce using rule 73 (action_3 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_3 shift and go to state 109
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 77
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(45) SumOrSub -> plus .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 45 (SumOrSub -> plus .)
|
|
|
|
|
int reduce using rule 45 (SumOrSub -> plus .)
|
|
|
|
|
rea reduce using rule 45 (SumOrSub -> plus .)
|
|
|
|
|
id reduce using rule 45 (SumOrSub -> plus .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 78
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(46) SumOrSub -> minus .
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 46 (SumOrSub -> minus .)
|
|
|
|
|
int reduce using rule 46 (SumOrSub -> minus .)
|
|
|
|
|
rea reduce using rule 46 (SumOrSub -> minus .)
|
|
|
|
|
id reduce using rule 46 (SumOrSub -> minus .)
|
2019-04-05 03:09:08 +00:00
|
|
|
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 79
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(48) MultDiv -> MultDiv MDSymbols . action_5 EAParens action_6
|
|
|
|
|
(75) action_5 -> .
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 75 (action_5 -> .)
|
|
|
|
|
int reduce using rule 75 (action_5 -> .)
|
|
|
|
|
rea reduce using rule 75 (action_5 -> .)
|
|
|
|
|
id reduce using rule 75 (action_5 -> .)
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_5 shift and go to state 110
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 80
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(49) MDSymbols -> mul .
|
|
|
|
|
|
|
|
|
|
openParen reduce using rule 49 (MDSymbols -> mul .)
|
|
|
|
|
int reduce using rule 49 (MDSymbols -> mul .)
|
|
|
|
|
rea reduce using rule 49 (MDSymbols -> mul .)
|
|
|
|
|
id reduce using rule 49 (MDSymbols -> mul .)
|
2019-04-05 03:09:08 +00:00
|
|
|
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 81
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(50) MDSymbols -> div .
|
|
|
|
|
|
|
|
|
|
openParen reduce using rule 50 (MDSymbols -> div .)
|
|
|
|
|
int reduce using rule 50 (MDSymbols -> div .)
|
|
|
|
|
rea reduce using rule 50 (MDSymbols -> div .)
|
|
|
|
|
id reduce using rule 50 (MDSymbols -> div .)
|
2019-04-05 03:23:41 +00:00
|
|
|
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 82
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(60) EItem -> Dimensional action_1 .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
div reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
plus reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
minus reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
coma reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
closedParen reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
end reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
id reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
read reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
print reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
if reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
do reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
swap reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
exit reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
elif reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
else reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
less reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
more reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
doubleEquals reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
notEquals reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
lessEquals reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
moreEquals reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
then reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
and reduce using rule 60 (EItem -> Dimensional action_1 .)
|
|
|
|
|
or reduce using rule 60 (EItem -> Dimensional action_1 .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 83
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(61) EItem -> int action_2 .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
div reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
plus reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
minus reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
coma reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
closedParen reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
end reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
id reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
read reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
print reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
if reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
do reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
swap reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
exit reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
elif reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
else reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
less reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
more reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
doubleEquals reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
notEquals reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
lessEquals reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
moreEquals reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
then reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
and reduce using rule 61 (EItem -> int action_2 .)
|
|
|
|
|
or reduce using rule 61 (EItem -> int action_2 .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 84
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(62) EItem -> rea action_2_rea .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
div reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
plus reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
minus reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
coma reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
closedParen reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
end reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
id reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
read reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
print reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
if reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
do reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
swap reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
exit reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
elif reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
else reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
less reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
more reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
doubleEquals reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
notEquals reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
lessEquals reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
moreEquals reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
then reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
and reduce using rule 62 (EItem -> rea action_2_rea .)
|
|
|
|
|
or reduce using rule 62 (EItem -> rea action_2_rea .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-28 04:52:42 -05:00
|
|
|
state 85
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(15) S -> Dimensional action_7 equals EA . action_8
|
|
|
|
|
(44) EA -> EA . SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(78) action_8 -> .
|
|
|
|
|
(45) SumOrSub -> . plus
|
|
|
|
|
(46) SumOrSub -> . minus
|
|
|
|
|
|
|
|
|
|
end reduce using rule 78 (action_8 -> .)
|
|
|
|
|
id reduce using rule 78 (action_8 -> .)
|
|
|
|
|
read reduce using rule 78 (action_8 -> .)
|
|
|
|
|
print reduce using rule 78 (action_8 -> .)
|
|
|
|
|
if reduce using rule 78 (action_8 -> .)
|
|
|
|
|
do reduce using rule 78 (action_8 -> .)
|
|
|
|
|
swap reduce using rule 78 (action_8 -> .)
|
|
|
|
|
exit reduce using rule 78 (action_8 -> .)
|
|
|
|
|
elif reduce using rule 78 (action_8 -> .)
|
|
|
|
|
else reduce using rule 78 (action_8 -> .)
|
|
|
|
|
plus shift and go to state 77
|
|
|
|
|
minus shift and go to state 78
|
|
|
|
|
|
|
|
|
|
action_8 shift and go to state 111
|
|
|
|
|
SumOrSub shift and go to state 76
|
|
|
|
|
|
|
|
|
|
state 86
|
|
|
|
|
|
|
|
|
|
(31) RDimensional -> RDimensional coma Dimensional . action_1 action_36
|
|
|
|
|
(70) action_1 -> .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 70 (action_1 -> .)
|
|
|
|
|
end reduce using rule 70 (action_1 -> .)
|
|
|
|
|
id reduce using rule 70 (action_1 -> .)
|
|
|
|
|
read reduce using rule 70 (action_1 -> .)
|
|
|
|
|
print reduce using rule 70 (action_1 -> .)
|
|
|
|
|
if reduce using rule 70 (action_1 -> .)
|
|
|
|
|
do reduce using rule 70 (action_1 -> .)
|
|
|
|
|
swap reduce using rule 70 (action_1 -> .)
|
|
|
|
|
exit reduce using rule 70 (action_1 -> .)
|
|
|
|
|
elif reduce using rule 70 (action_1 -> .)
|
|
|
|
|
else reduce using rule 70 (action_1 -> .)
|
|
|
|
|
|
|
|
|
|
action_1 shift and go to state 112
|
|
|
|
|
|
|
|
|
|
state 87
|
|
|
|
|
|
|
|
|
|
(30) RDimensional -> Dimensional action_1 action_36 .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
end reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
id reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
read reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
print reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
if reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
do reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
swap reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
exit reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
elif reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
else reduce using rule 30 (RDimensional -> Dimensional action_1 action_36 .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 88
|
|
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(33) RDimOrString -> RDimOrString coma DimOrString .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
coma reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
end reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
id reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
read reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
print reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
if reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
do reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
swap reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
exit reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
elif reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
|
|
|
|
else reduce using rule 33 (RDimOrString -> RDimOrString coma DimOrString .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 89
|
2019-04-28 04:52:42 -05:00
|
|
|
|
|
|
|
|
(34) DimOrString -> Dimensional action_1 action_33 .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
end reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
id reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
read reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
print reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
if reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
do reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
swap reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
exit reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
elif reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
else reduce using rule 34 (DimOrString -> Dimensional action_1 action_33 .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 90
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(19) S -> if action_16 Relif ElseOrEmpty . end if action_20
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end shift and go to state 113
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 91
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif . action_18 openParen EL closedParen action_17 then B
|
|
|
|
|
(88) action_18 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 88 (action_18 -> .)
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_18 shift and go to state 114
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 92
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(39) ElseOrEmpty -> else . action_19 B
|
|
|
|
|
(89) action_19 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
id reduce using rule 89 (action_19 -> .)
|
|
|
|
|
read reduce using rule 89 (action_19 -> .)
|
|
|
|
|
print reduce using rule 89 (action_19 -> .)
|
|
|
|
|
if reduce using rule 89 (action_19 -> .)
|
|
|
|
|
do reduce using rule 89 (action_19 -> .)
|
|
|
|
|
swap reduce using rule 89 (action_19 -> .)
|
|
|
|
|
exit reduce using rule 89 (action_19 -> .)
|
|
|
|
|
end reduce using rule 89 (action_19 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_19 shift and go to state 115
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 93
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(58) Equality -> openParen . EL closedParen
|
|
|
|
|
(53) EL -> . AND
|
|
|
|
|
(54) EL -> . EL or action_10 AND action_9
|
|
|
|
|
(55) AND -> . Equality
|
|
|
|
|
(56) AND -> . AND and action_12 Equality action_11
|
|
|
|
|
(57) Equality -> . EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
(58) Equality -> . openParen EL closedParen
|
|
|
|
|
(59) Equality -> . not EL action_15
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 93
|
|
|
|
|
not shift and go to state 98
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-24 22:10:01 -05:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EL shift and go to state 116
|
|
|
|
|
AND shift and go to state 95
|
|
|
|
|
Equality shift and go to state 96
|
|
|
|
|
EItem shift and go to state 97
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 94
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(37) Relif -> openParen EL . closedParen action_17 then B
|
|
|
|
|
(54) EL -> EL . or action_10 AND action_9
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen shift and go to state 117
|
|
|
|
|
or shift and go to state 118
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 95
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(53) EL -> AND .
|
|
|
|
|
(56) AND -> AND . and action_12 Equality action_11
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
! shift/reduce conflict for and resolved as shift
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen reduce using rule 53 (EL -> AND .)
|
|
|
|
|
or reduce using rule 53 (EL -> AND .)
|
|
|
|
|
and shift and go to state 119
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
! and [ reduce using rule 53 (EL -> AND .) ]
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 96
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(55) AND -> Equality .
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 55 (AND -> Equality .)
|
|
|
|
|
closedParen reduce using rule 55 (AND -> Equality .)
|
|
|
|
|
or reduce using rule 55 (AND -> Equality .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 97
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(57) Equality -> EItem . EQSymbols action_13 EItem action_14
|
|
|
|
|
(63) EQSymbols -> . less
|
|
|
|
|
(64) EQSymbols -> . more
|
|
|
|
|
(65) EQSymbols -> . doubleEquals
|
|
|
|
|
(66) EQSymbols -> . notEquals
|
|
|
|
|
(67) EQSymbols -> . lessEquals
|
|
|
|
|
(68) EQSymbols -> . moreEquals
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
less shift and go to state 121
|
|
|
|
|
more shift and go to state 122
|
|
|
|
|
doubleEquals shift and go to state 123
|
|
|
|
|
notEquals shift and go to state 124
|
|
|
|
|
lessEquals shift and go to state 125
|
|
|
|
|
moreEquals shift and go to state 126
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EQSymbols shift and go to state 120
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 98
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(59) Equality -> not . EL action_15
|
|
|
|
|
(53) EL -> . AND
|
|
|
|
|
(54) EL -> . EL or action_10 AND action_9
|
|
|
|
|
(55) AND -> . Equality
|
|
|
|
|
(56) AND -> . AND and action_12 Equality action_11
|
|
|
|
|
(57) Equality -> . EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
(58) Equality -> . openParen EL closedParen
|
|
|
|
|
(59) Equality -> . not EL action_15
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 93
|
|
|
|
|
not shift and go to state 98
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-24 22:10:01 -05:00
|
|
|
id shift and go to state 33
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EL shift and go to state 127
|
|
|
|
|
AND shift and go to state 95
|
|
|
|
|
Equality shift and go to state 96
|
|
|
|
|
EItem shift and go to state 97
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 99
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 equals . EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-29 17:56:14 -05:00
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-22 16:02:27 -05:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EA shift and go to state 128
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 100
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> do then action_21 B . action_22 end do
|
|
|
|
|
(13) B -> B . S
|
2019-04-29 17:56:14 -05:00
|
|
|
(92) action_22 -> .
|
2019-04-12 14:08:28 -05:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
|
|
|
|
(16) S -> . id parens
|
|
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 14:08:28 -05:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
|
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
|
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end reduce using rule 92 (action_22 -> .)
|
2019-04-12 14:08:28 -05:00
|
|
|
id shift and go to state 13
|
|
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_22 shift and go to state 129
|
2019-04-12 14:08:28 -05:00
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 101
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(22) S -> swap Dimensional coma Dimensional .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
print reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
if reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
do reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
swap reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
exit reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
elif reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
else reduce using rule 22 (S -> swap Dimensional coma Dimensional .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 102
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(11) F -> F subroutine id B end subroutine .
|
|
|
|
|
|
|
|
|
|
subroutine reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
end reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
print reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
if reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
do reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
swap reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
exit reduce using rule 11 (F -> F subroutine id B end subroutine .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 103
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
(2) V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .
|
|
|
|
|
|
|
|
|
|
integer reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
real reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
subroutine reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
end reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
id reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
read reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
print reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
if reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
do reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
swap reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
exit reduce using rule 2 (V -> V Tipo Dim doubleColon Rid action_addSymbols action_32 .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 104
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
(5) Rid -> Rid coma id .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
integer reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
real reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
subroutine reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
end reduce using rule 5 (Rid -> Rid coma id .)
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 5 (Rid -> Rid coma id .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
print reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
if reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
do reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
swap reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
exit reduce using rule 5 (Rid -> Rid coma id .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 105
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(9) Dim -> openBra int action_30 closedBra openBra . int action_31 closedBra
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int shift and go to state 130
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 106
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(52) EAParens -> openParen EA closedParen .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
div reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
plus reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
minus reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
coma reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
closedParen reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
end reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
id reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
read reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
print reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
if reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
do reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
swap reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
exit reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
elif reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
else reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
|
|
|
|
then reduce using rule 52 (EAParens -> openParen EA closedParen .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 107
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(26) DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty . closedParen
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen shift and go to state 131
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 108
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
(28) ComaEAOrEmpty -> coma . EA action_setDim2
|
2019-04-29 17:56:14 -05:00
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-05 03:09:08 +00:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EA shift and go to state 132
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 109
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA SumOrSub action_3 . MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-24 22:10:01 -05:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
MultDiv shift and go to state 133
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 110
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(48) MultDiv -> MultDiv MDSymbols action_5 . EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-05 03:09:08 +00:00
|
|
|
id shift and go to state 33
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EAParens shift and go to state 134
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 111
|
2019-04-05 03:23:41 +00:00
|
|
|
|
|
|
|
|
(15) S -> Dimensional action_7 equals EA action_8 .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
id reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
read reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
print reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
if reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
do reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
swap reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
exit reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
elif reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
else reduce using rule 15 (S -> Dimensional action_7 equals EA action_8 .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 112
|
|
|
|
|
|
|
|
|
|
(31) RDimensional -> RDimensional coma Dimensional action_1 . action_36
|
|
|
|
|
(105) action_36 -> .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 105 (action_36 -> .)
|
|
|
|
|
end reduce using rule 105 (action_36 -> .)
|
|
|
|
|
id reduce using rule 105 (action_36 -> .)
|
|
|
|
|
read reduce using rule 105 (action_36 -> .)
|
|
|
|
|
print reduce using rule 105 (action_36 -> .)
|
|
|
|
|
if reduce using rule 105 (action_36 -> .)
|
|
|
|
|
do reduce using rule 105 (action_36 -> .)
|
|
|
|
|
swap reduce using rule 105 (action_36 -> .)
|
|
|
|
|
exit reduce using rule 105 (action_36 -> .)
|
|
|
|
|
elif reduce using rule 105 (action_36 -> .)
|
|
|
|
|
else reduce using rule 105 (action_36 -> .)
|
|
|
|
|
|
|
|
|
|
action_36 shift and go to state 135
|
|
|
|
|
|
|
|
|
|
state 113
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> if action_16 Relif ElseOrEmpty end . if action_20
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
if shift and go to state 136
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 114
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 . openParen EL closedParen action_17 then B
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 137
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 115
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(39) ElseOrEmpty -> else action_19 . B
|
2019-03-21 22:59:22 -06:00
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 14 (B -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
B shift and go to state 138
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 116
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(58) Equality -> openParen EL . closedParen
|
|
|
|
|
(54) EL -> EL . or action_10 AND action_9
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen shift and go to state 139
|
|
|
|
|
or shift and go to state 118
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 117
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(37) Relif -> openParen EL closedParen . action_17 then B
|
|
|
|
|
(87) action_17 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then reduce using rule 87 (action_17 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_17 shift and go to state 140
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 118
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(54) EL -> EL or . action_10 AND action_9
|
|
|
|
|
(80) action_10 -> .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 80 (action_10 -> .)
|
|
|
|
|
not reduce using rule 80 (action_10 -> .)
|
|
|
|
|
int reduce using rule 80 (action_10 -> .)
|
|
|
|
|
rea reduce using rule 80 (action_10 -> .)
|
|
|
|
|
id reduce using rule 80 (action_10 -> .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_10 shift and go to state 141
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 119
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(56) AND -> AND and . action_12 Equality action_11
|
|
|
|
|
(82) action_12 -> .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen reduce using rule 82 (action_12 -> .)
|
|
|
|
|
not reduce using rule 82 (action_12 -> .)
|
|
|
|
|
int reduce using rule 82 (action_12 -> .)
|
|
|
|
|
rea reduce using rule 82 (action_12 -> .)
|
|
|
|
|
id reduce using rule 82 (action_12 -> .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_12 shift and go to state 142
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 120
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(57) Equality -> EItem EQSymbols . action_13 EItem action_14
|
|
|
|
|
(83) action_13 -> .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 83 (action_13 -> .)
|
|
|
|
|
rea reduce using rule 83 (action_13 -> .)
|
|
|
|
|
id reduce using rule 83 (action_13 -> .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_13 shift and go to state 143
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 121
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(63) EQSymbols -> less .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 63 (EQSymbols -> less .)
|
|
|
|
|
rea reduce using rule 63 (EQSymbols -> less .)
|
|
|
|
|
id reduce using rule 63 (EQSymbols -> less .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 122
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(64) EQSymbols -> more .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 64 (EQSymbols -> more .)
|
|
|
|
|
rea reduce using rule 64 (EQSymbols -> more .)
|
|
|
|
|
id reduce using rule 64 (EQSymbols -> more .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 123
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(65) EQSymbols -> doubleEquals .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 65 (EQSymbols -> doubleEquals .)
|
|
|
|
|
rea reduce using rule 65 (EQSymbols -> doubleEquals .)
|
|
|
|
|
id reduce using rule 65 (EQSymbols -> doubleEquals .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 124
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(66) EQSymbols -> notEquals .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 66 (EQSymbols -> notEquals .)
|
|
|
|
|
rea reduce using rule 66 (EQSymbols -> notEquals .)
|
|
|
|
|
id reduce using rule 66 (EQSymbols -> notEquals .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 125
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(67) EQSymbols -> lessEquals .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 67 (EQSymbols -> lessEquals .)
|
|
|
|
|
rea reduce using rule 67 (EQSymbols -> lessEquals .)
|
|
|
|
|
id reduce using rule 67 (EQSymbols -> lessEquals .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 126
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(68) EQSymbols -> moreEquals .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int reduce using rule 68 (EQSymbols -> moreEquals .)
|
|
|
|
|
rea reduce using rule 68 (EQSymbols -> moreEquals .)
|
|
|
|
|
id reduce using rule 68 (EQSymbols -> moreEquals .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 127
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(59) Equality -> not EL . action_15
|
|
|
|
|
(54) EL -> EL . or action_10 AND action_9
|
|
|
|
|
(85) action_15 -> .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
! shift/reduce conflict for or resolved as shift
|
2019-04-29 17:56:14 -05:00
|
|
|
or shift and go to state 118
|
|
|
|
|
and reduce using rule 85 (action_15 -> .)
|
|
|
|
|
closedParen reduce using rule 85 (action_15 -> .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
! or [ reduce using rule 85 (action_15 -> .) ]
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_15 shift and go to state 144
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 128
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 equals EA . action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA . SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(95) action_25 -> .
|
|
|
|
|
(45) SumOrSub -> . plus
|
|
|
|
|
(46) SumOrSub -> . minus
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma reduce using rule 95 (action_25 -> .)
|
|
|
|
|
plus shift and go to state 77
|
|
|
|
|
minus shift and go to state 78
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_25 shift and go to state 145
|
|
|
|
|
SumOrSub shift and go to state 76
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 129
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> do then action_21 B action_22 . end do
|
2019-03-21 23:13:56 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end shift and go to state 146
|
2019-03-21 23:13:56 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 130
|
2019-03-21 23:13:56 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(9) Dim -> openBra int action_30 closedBra openBra int . action_31 closedBra
|
2019-04-29 17:56:14 -05:00
|
|
|
(101) action_31 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedBra reduce using rule 101 (action_31 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_31 shift and go to state 147
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 131
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(26) DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .
|
|
|
|
|
|
|
|
|
|
equals reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
coma reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
end reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
id reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
read reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
print reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
if reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
do reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
swap reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
exit reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
elif reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
else reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
mul reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
div reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
plus reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
minus reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
closedParen reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
less reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
more reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
doubleEquals reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
notEquals reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
lessEquals reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
moreEquals reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
then reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
and reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
|
|
|
|
or reduce using rule 26 (DimensionsOrEmpty -> openParen EA action_setDim1 ComaEAOrEmpty closedParen .)
|
2019-04-05 03:09:08 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 132
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
(28) ComaEAOrEmpty -> coma EA . action_setDim2
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA . SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(107) action_setDim2 -> .
|
|
|
|
|
(45) SumOrSub -> . plus
|
|
|
|
|
(46) SumOrSub -> . minus
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen reduce using rule 107 (action_setDim2 -> .)
|
|
|
|
|
plus shift and go to state 77
|
|
|
|
|
minus shift and go to state 78
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_setDim2 shift and go to state 148
|
|
|
|
|
SumOrSub shift and go to state 76
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 133
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA SumOrSub action_3 MultDiv . action_4
|
|
|
|
|
(48) MultDiv -> MultDiv . MDSymbols action_5 EAParens action_6
|
|
|
|
|
(74) action_4 -> .
|
|
|
|
|
(49) MDSymbols -> . mul
|
|
|
|
|
(50) MDSymbols -> . div
|
|
|
|
|
|
|
|
|
|
plus reduce using rule 74 (action_4 -> .)
|
|
|
|
|
minus reduce using rule 74 (action_4 -> .)
|
|
|
|
|
coma reduce using rule 74 (action_4 -> .)
|
|
|
|
|
closedParen reduce using rule 74 (action_4 -> .)
|
|
|
|
|
end reduce using rule 74 (action_4 -> .)
|
|
|
|
|
id reduce using rule 74 (action_4 -> .)
|
|
|
|
|
read reduce using rule 74 (action_4 -> .)
|
|
|
|
|
print reduce using rule 74 (action_4 -> .)
|
|
|
|
|
if reduce using rule 74 (action_4 -> .)
|
|
|
|
|
do reduce using rule 74 (action_4 -> .)
|
|
|
|
|
swap reduce using rule 74 (action_4 -> .)
|
|
|
|
|
exit reduce using rule 74 (action_4 -> .)
|
|
|
|
|
elif reduce using rule 74 (action_4 -> .)
|
|
|
|
|
else reduce using rule 74 (action_4 -> .)
|
|
|
|
|
then reduce using rule 74 (action_4 -> .)
|
|
|
|
|
mul shift and go to state 80
|
|
|
|
|
div shift and go to state 81
|
|
|
|
|
|
|
|
|
|
action_4 shift and go to state 149
|
|
|
|
|
MDSymbols shift and go to state 79
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 134
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(48) MultDiv -> MultDiv MDSymbols action_5 EAParens . action_6
|
|
|
|
|
(76) action_6 -> .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 76 (action_6 -> .)
|
|
|
|
|
div reduce using rule 76 (action_6 -> .)
|
|
|
|
|
plus reduce using rule 76 (action_6 -> .)
|
|
|
|
|
minus reduce using rule 76 (action_6 -> .)
|
|
|
|
|
coma reduce using rule 76 (action_6 -> .)
|
|
|
|
|
closedParen reduce using rule 76 (action_6 -> .)
|
|
|
|
|
end reduce using rule 76 (action_6 -> .)
|
|
|
|
|
id reduce using rule 76 (action_6 -> .)
|
|
|
|
|
read reduce using rule 76 (action_6 -> .)
|
|
|
|
|
print reduce using rule 76 (action_6 -> .)
|
|
|
|
|
if reduce using rule 76 (action_6 -> .)
|
|
|
|
|
do reduce using rule 76 (action_6 -> .)
|
|
|
|
|
swap reduce using rule 76 (action_6 -> .)
|
|
|
|
|
exit reduce using rule 76 (action_6 -> .)
|
|
|
|
|
elif reduce using rule 76 (action_6 -> .)
|
|
|
|
|
else reduce using rule 76 (action_6 -> .)
|
|
|
|
|
then reduce using rule 76 (action_6 -> .)
|
|
|
|
|
|
|
|
|
|
action_6 shift and go to state 150
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 135
|
|
|
|
|
|
|
|
|
|
(31) RDimensional -> RDimensional coma Dimensional action_1 action_36 .
|
|
|
|
|
|
|
|
|
|
coma reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
end reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
id reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
read reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
print reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
if reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
do reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
swap reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
exit reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
elif reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
else reduce using rule 31 (RDimensional -> RDimensional coma Dimensional action_1 action_36 .)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
state 136
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> if action_16 Relif ElseOrEmpty end if . action_20
|
2019-04-29 17:56:14 -05:00
|
|
|
(90) action_20 -> .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end reduce using rule 90 (action_20 -> .)
|
|
|
|
|
id reduce using rule 90 (action_20 -> .)
|
|
|
|
|
read reduce using rule 90 (action_20 -> .)
|
|
|
|
|
print reduce using rule 90 (action_20 -> .)
|
|
|
|
|
if reduce using rule 90 (action_20 -> .)
|
|
|
|
|
do reduce using rule 90 (action_20 -> .)
|
|
|
|
|
swap reduce using rule 90 (action_20 -> .)
|
|
|
|
|
exit reduce using rule 90 (action_20 -> .)
|
|
|
|
|
elif reduce using rule 90 (action_20 -> .)
|
|
|
|
|
else reduce using rule 90 (action_20 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_20 shift and go to state 151
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 137
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 openParen . EL closedParen action_17 then B
|
|
|
|
|
(53) EL -> . AND
|
|
|
|
|
(54) EL -> . EL or action_10 AND action_9
|
|
|
|
|
(55) AND -> . Equality
|
|
|
|
|
(56) AND -> . AND and action_12 Equality action_11
|
|
|
|
|
(57) Equality -> . EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
(58) Equality -> . openParen EL closedParen
|
|
|
|
|
(59) Equality -> . not EL action_15
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 93
|
|
|
|
|
not shift and go to state 98
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-12 07:23:32 +00:00
|
|
|
id shift and go to state 33
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EL shift and go to state 152
|
|
|
|
|
AND shift and go to state 95
|
|
|
|
|
Equality shift and go to state 96
|
|
|
|
|
EItem shift and go to state 97
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 138
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(39) ElseOrEmpty -> else action_19 B .
|
2019-03-21 22:59:22 -06:00
|
|
|
(13) B -> B . S
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
2019-03-21 23:13:56 -06:00
|
|
|
(16) S -> . id parens
|
2019-03-21 22:59:22 -06:00
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end reduce using rule 39 (ElseOrEmpty -> else action_19 B .)
|
2019-03-21 22:59:22 -06:00
|
|
|
id shift and go to state 13
|
2019-03-21 23:13:56 -06:00
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 139
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(58) Equality -> openParen EL closedParen .
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 58 (Equality -> openParen EL closedParen .)
|
|
|
|
|
closedParen reduce using rule 58 (Equality -> openParen EL closedParen .)
|
|
|
|
|
or reduce using rule 58 (Equality -> openParen EL closedParen .)
|
2019-04-12 04:12:35 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 140
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(37) Relif -> openParen EL closedParen action_17 . then B
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then shift and go to state 153
|
2019-04-12 04:12:35 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 141
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(54) EL -> EL or action_10 . AND action_9
|
|
|
|
|
(55) AND -> . Equality
|
|
|
|
|
(56) AND -> . AND and action_12 Equality action_11
|
|
|
|
|
(57) Equality -> . EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
(58) Equality -> . openParen EL closedParen
|
|
|
|
|
(59) Equality -> . not EL action_15
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 93
|
|
|
|
|
not shift and go to state 98
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-12 07:23:32 +00:00
|
|
|
id shift and go to state 33
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
AND shift and go to state 154
|
|
|
|
|
Equality shift and go to state 96
|
|
|
|
|
EItem shift and go to state 97
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 142
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(56) AND -> AND and action_12 . Equality action_11
|
|
|
|
|
(57) Equality -> . EItem EQSymbols action_13 EItem action_14
|
|
|
|
|
(58) Equality -> . openParen EL closedParen
|
|
|
|
|
(59) Equality -> . not EL action_15
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 93
|
|
|
|
|
not shift and go to state 98
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-12 07:23:32 +00:00
|
|
|
id shift and go to state 33
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
Equality shift and go to state 155
|
|
|
|
|
EItem shift and go to state 97
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 143
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(57) Equality -> EItem EQSymbols action_13 . EItem action_14
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-12 07:23:32 +00:00
|
|
|
id shift and go to state 33
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EItem shift and go to state 156
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 144
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(59) Equality -> not EL action_15 .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 59 (Equality -> not EL action_15 .)
|
|
|
|
|
closedParen reduce using rule 59 (Equality -> not EL action_15 .)
|
|
|
|
|
or reduce using rule 59 (Equality -> not EL action_15 .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 145
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 equals EA action_25 . coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma shift and go to state 157
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 146
|
2019-04-12 14:08:28 -05:00
|
|
|
|
|
|
|
|
(21) S -> do then action_21 B action_22 end . do
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
do shift and go to state 158
|
2019-04-12 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 147
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(9) Dim -> openBra int action_30 closedBra openBra int action_31 . closedBra
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedBra shift and go to state 159
|
2019-04-05 03:09:08 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 148
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
(28) ComaEAOrEmpty -> coma EA action_setDim2 .
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
closedParen reduce using rule 28 (ComaEAOrEmpty -> coma EA action_setDim2 .)
|
2019-04-05 03:09:08 +00:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 149
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA SumOrSub action_3 MultDiv action_4 .
|
|
|
|
|
|
|
|
|
|
plus reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
minus reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
coma reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
closedParen reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
end reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
id reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
read reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
print reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
if reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
do reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
swap reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
exit reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
elif reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
else reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
|
|
|
|
then reduce using rule 44 (EA -> EA SumOrSub action_3 MultDiv action_4 .)
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 150
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(48) MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .
|
|
|
|
|
|
|
|
|
|
mul reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
div reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
plus reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
minus reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
coma reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
closedParen reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
end reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
id reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
read reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
print reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
if reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
do reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
swap reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
exit reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
elif reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
else reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
|
|
|
|
then reduce using rule 48 (MultDiv -> MultDiv MDSymbols action_5 EAParens action_6 .)
|
2019-04-24 22:10:01 -05:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 151
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
(19) S -> if action_16 Relif ElseOrEmpty end if action_20 .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
id reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
read reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
print reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
if reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
do reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
swap reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
exit reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
elif reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
else reduce using rule 19 (S -> if action_16 Relif ElseOrEmpty end if action_20 .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 152
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 openParen EL . closedParen action_17 then B
|
|
|
|
|
(54) EL -> EL . or action_10 AND action_9
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen shift and go to state 160
|
|
|
|
|
or shift and go to state 118
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 153
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(37) Relif -> openParen EL closedParen action_17 then . B
|
2019-03-21 22:59:22 -06:00
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
|
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
id reduce using rule 14 (B -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
|
|
|
|
elif reduce using rule 14 (B -> .)
|
|
|
|
|
else reduce using rule 14 (B -> .)
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
B shift and go to state 161
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 154
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(54) EL -> EL or action_10 AND . action_9
|
|
|
|
|
(56) AND -> AND . and action_12 Equality action_11
|
|
|
|
|
(79) action_9 -> .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
! shift/reduce conflict for and resolved as shift
|
2019-04-29 17:56:14 -05:00
|
|
|
and shift and go to state 119
|
|
|
|
|
closedParen reduce using rule 79 (action_9 -> .)
|
|
|
|
|
or reduce using rule 79 (action_9 -> .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
! and [ reduce using rule 79 (action_9 -> .) ]
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_9 shift and go to state 162
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 155
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(56) AND -> AND and action_12 Equality . action_11
|
|
|
|
|
(81) action_11 -> .
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 81 (action_11 -> .)
|
|
|
|
|
closedParen reduce using rule 81 (action_11 -> .)
|
|
|
|
|
or reduce using rule 81 (action_11 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_11 shift and go to state 163
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 156
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(57) Equality -> EItem EQSymbols action_13 EItem . action_14
|
|
|
|
|
(84) action_14 -> .
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 84 (action_14 -> .)
|
|
|
|
|
closedParen reduce using rule 84 (action_14 -> .)
|
|
|
|
|
or reduce using rule 84 (action_14 -> .)
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_14 shift and go to state 164
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 157
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 equals EA action_25 coma . EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-29 17:56:14 -05:00
|
|
|
(43) EA -> . MultDiv
|
|
|
|
|
(44) EA -> . EA SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(47) MultDiv -> . EAParens
|
|
|
|
|
(48) MultDiv -> . MultDiv MDSymbols action_5 EAParens action_6
|
|
|
|
|
(51) EAParens -> . EItem
|
|
|
|
|
(52) EAParens -> . openParen EA closedParen
|
|
|
|
|
(60) EItem -> . Dimensional action_1
|
|
|
|
|
(61) EItem -> . int action_2
|
|
|
|
|
(62) EItem -> . rea action_2_rea
|
2019-04-24 22:10:01 -05:00
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
openParen shift and go to state 48
|
|
|
|
|
int shift and go to state 55
|
|
|
|
|
rea shift and go to state 56
|
2019-04-22 16:02:27 -05:00
|
|
|
id shift and go to state 33
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
EA shift and go to state 165
|
|
|
|
|
MultDiv shift and go to state 51
|
|
|
|
|
EAParens shift and go to state 52
|
|
|
|
|
EItem shift and go to state 53
|
|
|
|
|
Dimensional shift and go to state 54
|
2019-04-12 04:12:35 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 158
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> do then action_21 B action_22 end do .
|
|
|
|
|
|
|
|
|
|
end reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
id reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
read reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
print reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
if reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
do reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
swap reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
exit reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
elif reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
else reduce using rule 21 (S -> do then action_21 B action_22 end do .)
|
|
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 159
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
(9) Dim -> openBra int action_30 closedBra openBra int action_31 closedBra .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-24 22:10:01 -05:00
|
|
|
doubleColon reduce using rule 9 (Dim -> openBra int action_30 closedBra openBra int action_31 closedBra .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 160
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 openParen EL closedParen . action_17 then B
|
|
|
|
|
(87) action_17 -> .
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then reduce using rule 87 (action_17 -> .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_17 shift and go to state 166
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 161
|
2019-04-24 22:10:01 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(37) Relif -> openParen EL closedParen action_17 then B .
|
2019-03-21 22:59:22 -06:00
|
|
|
(13) B -> B . S
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
2019-03-21 23:13:56 -06:00
|
|
|
(16) S -> . id parens
|
2019-03-21 22:59:22 -06:00
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
elif reduce using rule 37 (Relif -> openParen EL closedParen action_17 then B .)
|
|
|
|
|
else reduce using rule 37 (Relif -> openParen EL closedParen action_17 then B .)
|
|
|
|
|
end reduce using rule 37 (Relif -> openParen EL closedParen action_17 then B .)
|
2019-03-21 22:59:22 -06:00
|
|
|
id shift and go to state 13
|
2019-03-21 23:13:56 -06:00
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 162
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(54) EL -> EL or action_10 AND action_9 .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
closedParen reduce using rule 54 (EL -> EL or action_10 AND action_9 .)
|
|
|
|
|
or reduce using rule 54 (EL -> EL or action_10 AND action_9 .)
|
|
|
|
|
and reduce using rule 54 (EL -> EL or action_10 AND action_9 .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 163
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(56) AND -> AND and action_12 Equality action_11 .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 56 (AND -> AND and action_12 Equality action_11 .)
|
|
|
|
|
closedParen reduce using rule 56 (AND -> AND and action_12 Equality action_11 .)
|
|
|
|
|
or reduce using rule 56 (AND -> AND and action_12 Equality action_11 .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 164
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(57) Equality -> EItem EQSymbols action_13 EItem action_14 .
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
and reduce using rule 57 (Equality -> EItem EQSymbols action_13 EItem action_14 .)
|
|
|
|
|
closedParen reduce using rule 57 (Equality -> EItem EQSymbols action_13 EItem action_14 .)
|
|
|
|
|
or reduce using rule 57 (Equality -> EItem EQSymbols action_13 EItem action_14 .)
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 165
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA . action_26 IntOrEmpty then B action_29 end do
|
2019-04-29 17:56:14 -05:00
|
|
|
(44) EA -> EA . SumOrSub action_3 MultDiv action_4
|
|
|
|
|
(96) action_26 -> .
|
|
|
|
|
(45) SumOrSub -> . plus
|
|
|
|
|
(46) SumOrSub -> . minus
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma reduce using rule 96 (action_26 -> .)
|
|
|
|
|
then reduce using rule 96 (action_26 -> .)
|
|
|
|
|
plus shift and go to state 77
|
|
|
|
|
minus shift and go to state 78
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_26 shift and go to state 167
|
|
|
|
|
SumOrSub shift and go to state 76
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 166
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 openParen EL closedParen action_17 . then B
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then shift and go to state 168
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 167
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 . IntOrEmpty then B action_29 end do
|
2019-04-29 17:56:14 -05:00
|
|
|
(41) IntOrEmpty -> . coma int action_28
|
|
|
|
|
(42) IntOrEmpty -> . action_27
|
|
|
|
|
(97) action_27 -> .
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
coma shift and go to state 169
|
|
|
|
|
then reduce using rule 97 (action_27 -> .)
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
IntOrEmpty shift and go to state 170
|
|
|
|
|
action_27 shift and go to state 171
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 168
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 openParen EL closedParen action_17 then . B
|
2019-03-21 23:13:56 -06:00
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
|
|
|
|
|
|
|
|
|
id reduce using rule 14 (B -> .)
|
|
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
2019-04-22 16:02:27 -05:00
|
|
|
elif reduce using rule 14 (B -> .)
|
|
|
|
|
else reduce using rule 14 (B -> .)
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
2019-03-21 23:13:56 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
B shift and go to state 172
|
2019-03-21 23:13:56 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 169
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(41) IntOrEmpty -> coma . int action_28
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
int shift and go to state 173
|
2019-04-12 07:23:32 +00:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 170
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty . then B action_29 end do
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then shift and go to state 174
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 171
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(42) IntOrEmpty -> action_27 .
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then reduce using rule 42 (IntOrEmpty -> action_27 .)
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-03-21 23:13:56 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 172
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(38) Relif -> Relif elif action_18 openParen EL closedParen action_17 then B .
|
2019-03-21 22:59:22 -06:00
|
|
|
(13) B -> B . S
|
2019-04-05 03:23:41 +00:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
2019-03-21 23:13:56 -06:00
|
|
|
(16) S -> . id parens
|
2019-03-21 22:59:22 -06:00
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
2019-03-21 22:59:22 -06:00
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
elif reduce using rule 38 (Relif -> Relif elif action_18 openParen EL closedParen action_17 then B .)
|
|
|
|
|
else reduce using rule 38 (Relif -> Relif elif action_18 openParen EL closedParen action_17 then B .)
|
|
|
|
|
end reduce using rule 38 (Relif -> Relif elif action_18 openParen EL closedParen action_17 then B .)
|
2019-03-21 22:59:22 -06:00
|
|
|
id shift and go to state 13
|
2019-03-21 23:13:56 -06:00
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 173
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(41) IntOrEmpty -> coma int . action_28
|
|
|
|
|
(98) action_28 -> .
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then reduce using rule 98 (action_28 -> .)
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_28 shift and go to state 175
|
2019-04-22 16:02:27 -05:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 174
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then . B action_29 end do
|
2019-04-12 07:23:32 +00:00
|
|
|
(13) B -> . B S
|
|
|
|
|
(14) B -> .
|
|
|
|
|
|
|
|
|
|
id reduce using rule 14 (B -> .)
|
|
|
|
|
read reduce using rule 14 (B -> .)
|
|
|
|
|
print reduce using rule 14 (B -> .)
|
|
|
|
|
if reduce using rule 14 (B -> .)
|
|
|
|
|
do reduce using rule 14 (B -> .)
|
|
|
|
|
swap reduce using rule 14 (B -> .)
|
|
|
|
|
exit reduce using rule 14 (B -> .)
|
|
|
|
|
end reduce using rule 14 (B -> .)
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
B shift and go to state 176
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 175
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
(41) IntOrEmpty -> coma int action_28 .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
then reduce using rule 41 (IntOrEmpty -> coma int action_28 .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 176
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B . action_29 end do
|
2019-04-12 07:23:32 +00:00
|
|
|
(13) B -> B . S
|
2019-04-29 17:56:14 -05:00
|
|
|
(99) action_29 -> .
|
2019-04-12 07:23:32 +00:00
|
|
|
(15) S -> . Dimensional action_7 equals EA action_8
|
|
|
|
|
(16) S -> . id parens
|
|
|
|
|
(17) S -> . read RDimensional
|
2019-04-29 17:56:14 -05:00
|
|
|
(18) S -> . print RDimOrString
|
2019-04-12 07:23:32 +00:00
|
|
|
(19) S -> . if action_16 Relif ElseOrEmpty end if action_20
|
2019-04-22 16:02:27 -05:00
|
|
|
(20) S -> . do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do
|
2019-04-12 14:08:28 -05:00
|
|
|
(21) S -> . do then action_21 B action_22 end do
|
2019-04-12 07:23:32 +00:00
|
|
|
(22) S -> . swap Dimensional coma Dimensional
|
2019-04-12 14:08:28 -05:00
|
|
|
(23) S -> . exit action_23
|
2019-04-24 22:10:01 -05:00
|
|
|
(24) S -> . id openParen closedParen
|
|
|
|
|
(25) Dimensional -> . id DimensionsOrEmpty
|
2019-04-12 07:23:32 +00:00
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end reduce using rule 99 (action_29 -> .)
|
2019-04-12 07:23:32 +00:00
|
|
|
id shift and go to state 13
|
|
|
|
|
read shift and go to state 17
|
|
|
|
|
print shift and go to state 18
|
|
|
|
|
if shift and go to state 19
|
|
|
|
|
do shift and go to state 20
|
|
|
|
|
swap shift and go to state 21
|
|
|
|
|
exit shift and go to state 22
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
action_29 shift and go to state 177
|
2019-04-12 07:23:32 +00:00
|
|
|
S shift and go to state 15
|
|
|
|
|
Dimensional shift and go to state 16
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 177
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 . end do
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
end shift and go to state 178
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 178
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end . do
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
do shift and go to state 179
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
|
2019-04-29 17:56:14 -05:00
|
|
|
state 179
|
2019-04-22 16:02:27 -05:00
|
|
|
|
|
|
|
|
(20) S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .
|
2019-03-21 22:59:22 -06:00
|
|
|
|
2019-04-22 16:02:27 -05:00
|
|
|
end reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
id reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
read reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
print reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
if reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
do reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
swap reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
exit reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
elif reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
|
|
|
|
else reduce using rule 20 (S -> do id action_24 equals EA action_25 coma EA action_26 IntOrEmpty then B action_29 end do .)
|
2019-03-21 22:59:22 -06:00
|
|
|
|
|
|
|
|
WARNING:
|
|
|
|
|
WARNING: Conflicts:
|
|
|
|
|
WARNING:
|
2019-04-29 17:56:14 -05:00
|
|
|
WARNING: shift/reduce conflict for and in state 95 resolved as shift
|
|
|
|
|
WARNING: shift/reduce conflict for or in state 127 resolved as shift
|
|
|
|
|
WARNING: shift/reduce conflict for and in state 154 resolved as shift
|