Separated the interpreter from main program