--main options %options ACTION, AN=JavaAction.java, GP=java, %options FILE-PREFIX=java, ESCAPE=$, PREFIX=TokenName, OUTPUT-SIZE=125 , %options NOGOTO-DEFAULT, SINGLE-PRODUCTIONS, LALR=1 , TABLE, --error recovering options..... %options ERROR_MAPS --grammar understanding options %options first follow %options TRACE=FULL , %options VERBOSE %options DEFERRED %options NAMES=MAX %options SCOPES $Terminals Identifier MULTIPLY ARROW LParen RParen $Alias '*' ::= MULTIPLY '(' ::= LParen ')' ::= RParen '->' ::= ARROW $Start Goal $Rules Goal ::= Expr Expr -> Mul Expr -> Lambda Mul -> Unary Mul ::= Mul MULTIPLY Unary Unary -> Identifier Unary -> Cast Cast ::= LParen Identifier RParen Primary Cast ::= LParen Identifier RParen Lambda Primary -> Identifier Lambda ::= LParen RParen ARROW Body Body -> Expr