Exercise 8:

Parenthesized expressions over binary + and *
The set of tokens of the language is {+,*,(,),NUMBER}. The token NUMBER represents unsigned integers, i.e., non-empty sequences of digits. The expressions 9, 3*(2+1), (2+5)*1+4 and 1*(2+3)*4+5 are correct but *, )1+, +(*), 1 2, *3, ()), 2*3*(3*) are not. The generated AST must correspond to an interpretation of both + and * as a left-associative operators, and should discard the parentheses. The usual precedence of * over + applies. For example, the input (1+2+3)*4+5*6*7 must produce the AST +(*(+(+(1,2),3),4),*(*(5,6),7))
Authors: Pau Fernández / Documentation:
To be able to submit you need to either log in, register, or become a guest.