Expression Parser exercise using open-closed principal