token Num=''; token Plus='+' Minus='-' Star='*' Slash='/'; token LPar='(' RPar=')'; token Whitespace; skip Whitespace; start calc; calc: expr; expr: expr ('*' | '/') expr | expr ('+' | '-') expr | atomic ; atomic: literal | paren; literal: Num; paren: '(' expr ')';