home *** CD-ROM | disk | FTP | other *** search
- \ CALC -- A simple four-function calculator grammar
- \ which allows variable assignments.
- Goal -> Stmts QUIT #quit
- Stmts -> Stmts Stmt
- -> Stmt
- Stmt -> Expr <eol> #prtval
- -> <identifier> := Expr <eol> #assign
- -> <eol> \ allow an empty line
- Expr -> Expr + Term #plus
- -> Expr - Term #minus
- -> Term
- Term -> Term * Fact #mpy
- -> Term / Fact #divide
- -> Fact
- Fact -> Primary
- -> - Primary #uminus
- Primary -> ( Expr ) #parens
- -> <identifier> #variable
- -> <real> #realval
- -> <integer> #intval