What is "interpreter"

An interpreter is similar to a compiler in the sense that they both execute a code in a given language.

The difference between them is that the interpreter nay generates an executable from a code, serving as a preview for the execution of the code.

Examples of languages that make use of interpreters are Prolog, Clean and Haskell.