refactored parser and interpreter