Semantic Interpretation
Exp(x)    Exp(x1) Operator(op) Exp(x2)
                { x = Apply(op, x1, x2) }
Exp(x)    ( Exp(x) )
Exp(x)    Number(x)
Number(x)    Digit(x)
Number(x)    Number(x1) Digit(x2) { x = 10 x1 + x2 }
Digit(x)    x { 0 ≤ x ≤ 9 }
Operator(x)    x { x { , , , }}