EXPRESSION       <-  _ TERM (TERM_OPERATOR TERM)*
TERM             <-  FACTOR (FACTOR_OPERATOR FACTOR)*
FACTOR           <-  NUMBER / '(' _ EXPRESSION ')' _
TERM_OPERATOR    <-  < [-+] > _
FACTOR_OPERATOR  <-  < [/*] > _
NUMBER           <-  < [0-9]+ > _
~_               <-  [ \t\r\n]*
2 * (3 + 4)