Interpreter. An interpreter translates code into machine code, instruction by instruction – the CPU executes each instruction before the interpreter moves on to translate the next instruction. Interpreted code will show an error as soon as it hits a problem, so it is easier to debug than compiled code.