expression parser is partially done!