The term "interpreter" has a much more general meaning than what is discussed here. Typically, an "interpreter" is an option that can be used instead of a "compiler". An interpreter differs from a compiler in that it "interprets" the commands into binary code that the computer unsterstands as the program runs. This means that every time you run a program, the interpreter needs to change the commands into so-called "native code". On the other hand, a compiler converts the program into native code once when it is compiled. Then when you run the program, the native code is run directly; there is no intermediate interpretting step.
These two options have their advantages and disadvantages. Compiling code takes extra time when you are developing and
testing software. Interpreting code takes more time when it is run. There are other trade offs, but these are the primary two, in my opinion.
Layne