Interpretation – operator-by-statement (command-by-command, line-by-line) analysis, processing and then immediately executing the original program or request (as opposed to compilation, in which the program is translated without executing it). WikipediaĪn interpreter is a program (a kind of translator) that performs interpretation.
The input information for the compiler (source code) is a description of the algorithm or a program in a domain-specific language, and the output of the compiler is an equivalent description of the algorithm in a machine-oriented language (object code). To clarify the difference, let’s find out what it is:Ī compiler is a program or hardware that performs compilation.Ĭompilation – translation of a program written in a high-level source language into an equivalent program in a low-level language close to machine code (absolute code, object module, sometimes into assembly language).
What’s the difference between a compiler and an interpreter? Can a programming language have both a compiler and an interpreter?