In computer science, an interpreted language is a programming language that directly executes instructions without them having been compiled into machine code. Popular high-level languages, like Perl, Python, and MATLAB are interpreted.

The primary functions of interpreters:

  • Reads input program in fragments (lines, for loops, etc), instead of all at once.
  • Checks for and reports errors.
  • Then translates into machine code.
  • Program execution is during interpretation.

In general: interpreted languages are slower (performance-wise) than compiled languages. This is primarily because compilers operate on entire programs, and can apply broader optimisation techniques.

Resources

  • Crafting Interpreters, by Robert Nystrom

See also