Type* doc::Operate() { Interpreter interpreter; MemoryUnit mem; Type* code = GetNextValue(); Queue* queue = dynamic_cast<Queue*>(code); //this should ofcourse always work! std::string codeString = queue->GetString(); GetArgs(); interpreter.doc(codeString); Type* ret = mem.ReadProgramStack()->clone(); return ret; }