28 lines
543 B
OCaml
28 lines
543 B
OCaml
|
|
||
|
(*
|
||
|
LL(1)
|
||
|
#01 - E0 -> function ident -> E0
|
||
|
#02 - E0 -> let ident = E0 in E0
|
||
|
#03 - E0 -> letrec ident = E0 in E0
|
||
|
#04 - E0 -> if E0 then E0 else E0
|
||
|
#05 - E0 -> F TY EY EX
|
||
|
#06 - EX -> = F TY EY EX
|
||
|
#07 - EX ->
|
||
|
#08 - EY -> + F TY EY
|
||
|
#09 - EY -> - F TY EY
|
||
|
#10 - EY ->
|
||
|
#11 - TY -> * F TY
|
||
|
#12 - TY -> / F TY
|
||
|
#13 - TY ->
|
||
|
#14 - F -> - F
|
||
|
#15 - F -> ( E0 ) FX
|
||
|
#16 - F -> ident FI
|
||
|
#17 - F -> true
|
||
|
#18 - F -> false
|
||
|
#19 - F -> number
|
||
|
#20 - FX -> ( E0 )
|
||
|
#21 - FX ->
|
||
|
#22 - FI -> ( EO )
|
||
|
#23 - FI ->
|
||
|
*)
|