Software → Programming Languages
Interpreter
A program that executes source code or intermediate code directly rather than ahead-of-time compiling it into a final executable.
Motivation
An interpreter solves the problem of running code without first producing a separate machine-code executable. This can improve flexibility, portability, and development speed.
Where it fits
Interpreters belong to programming languages and are closely related to runtimes, bytecode, virtual machines, and dynamic languages.
Mental model
An interpreter reads a program representation and performs its behavior directly, often step by step or through a runtime loop.
Common mistakes
- Assuming interpreted always means slow.
- Ignoring JIT compilation and bytecode interpreters.
- Treating interpreter and runtime as exactly the same thing.