summaryrefslogtreecommitdiff
path: root/grammar-ll1.txt
diff options
context:
space:
mode:
Diffstat (limited to 'grammar-ll1.txt')
-rw-r--r--grammar-ll1.txt19
1 files changed, 8 insertions, 11 deletions
diff --git a/grammar-ll1.txt b/grammar-ll1.txt
index 9487bd1..23c1abf 100644
--- a/grammar-ll1.txt
+++ b/grammar-ll1.txt
@@ -12,12 +12,14 @@ context-free syntax
STATEMENT ::= ID ":=" EXP
context-free syntax
- EXP ::= ID
- EXP ::= NAT
- EXP ::= EXP "+" EXP {left}
- EXP ::= EXP "*" EXP {left}
- EXP ::= "-" EXP
- EXP ::= "(" EXP ")"
+ EXP ::= EXP "+" PROD-EXP
+ EXP ::= PROD-EXP
+ PROD-EXP ::= EXP "*" SINGLE-EXP
+ PROD-EXP ::= SINGLE-EXP
+ SINGLE-EXP ::= "-" EXP
+ SINGLE-EXP ::= ID
+ SINGLE-EXP ::= NAT
+ SINGLE-EXP ::= "(" EXP ")"
lexical syntax
ID ::= [a-z] ID'
@@ -34,8 +36,3 @@ lexical syntax
LAYOUT ::= " " LAYOUT
LAYOUT ::= "\n" LAYOUT
LAYOUT ::=
-
-context-free priorities
- EXP ::= "-" EXP >
- EXP ::= EXP "*" EXP >
- EXP ::= EXP "+" EXP