From e84204e28c64f60ec6dcb0ec009b77d78a220967 Mon Sep 17 00:00:00 2001 From: josh Date: Sun, 1 Jun 2008 18:30:57 +0000 Subject: [PATCH] added arithmetic.grammar git-svn-id: svn://anubis/gvsu@109 45c1a28c-8058-47b2-ae61-ca45b979098e --- cs675/bottomup/arithmetic.grammar | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 cs675/bottomup/arithmetic.grammar diff --git a/cs675/bottomup/arithmetic.grammar b/cs675/bottomup/arithmetic.grammar new file mode 100644 index 0000000..d156aa2 --- /dev/null +++ b/cs675/bottomup/arithmetic.grammar @@ -0,0 +1,29 @@ + +Package jholtrop.gvsu.cs675.bottomup; + +Tokens + blank = (' ' | 9 | 10 | 13); + number = ['0' .. '9']+ ('.' ['0' .. '9']+)?; + plus = '+'; + minus = '-'; + multiply = '*'; + divide = '/'; + l_par = '('; + r_par = ')'; + +Ignored Tokens + blank; + +Productions + expr = + {addition} expr plus term | + {subtraction} expr minus term | + {term} term; + + term = + {multiplication} term multiply factor | + {division} term divide factor; + + factor = + {number} number | + {paren} l_par expr r_par;