Single threaded interpreter for AST