aboutsummaryrefslogtreecommitdiff
path: root/grammar
diff options
context:
space:
mode:
Diffstat (limited to 'grammar')
-rw-r--r--grammar/expression.grm6
-rw-r--r--grammar/simple-stupid.grm1
2 files changed, 7 insertions, 0 deletions
diff --git a/grammar/expression.grm b/grammar/expression.grm
new file mode 100644
index 0000000..6c4eddb
--- /dev/null
+++ b/grammar/expression.grm
@@ -0,0 +1,6 @@
+main -> expression
+expression -> binary_operation | number | '(' expression ')'
+binary_operation -> expression binary_operand expression
+binary_operand -> '+' | '-' | '*' | '/'
+number -> digit number | digit
+digit -> '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
diff --git a/grammar/simple-stupid.grm b/grammar/simple-stupid.grm
new file mode 100644
index 0000000..1fa8992
--- /dev/null
+++ b/grammar/simple-stupid.grm
@@ -0,0 +1 @@
+main -> main 'b' | ''