A simple Math expression parser using BNF