What translates one program instruction at a time into machine language?

What translates one program instruction at a time into machine language?
A: Interpreter
B: Compiler
C: Simulator
D: None of these

An interpreter translates one program instruction at a time into machine language; unlike a compiler. This distinction is a common exam question.