Compilers and interpreters

0Citations
Citations of this article
10Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Compilers and interpreters are language translators that have many functions in common, in that both must read and analyze source code. A compiler, however, produces a program equivalent to the source program in a target language, usually object or assembly code but also sometimes C, whereas an interpreter directly executes the source program. Any programming language may be either compiled or interpreted, but languages with significant static properties (e.g., FORTRAN, Ada, C++) are almost always compiled, whereas languages that are more dynamic in nature (e.g., LISP, Smalltalk) are more likely to be interpreted. Languages that differ substantially from the standard von Neumann model of most architectures (e.g., PROLOG) may also be interpreted rather than compiled. A performance penalty is incurred by interpretation over compilation, so in cases where speed is critical, compilation is to be preferred. By mixing compilation and interpretation, this performance penalty can be reduced, usually to well within an order of magnitude. The advantage to interpretation is that the compilation step is avoided (useful during program development), and an interpreter offers greater control over the execution environment (useful for complex run-time environments) and greater flexibility in adapting to different architectures.

Cite

CITATION STYLE

APA

Louden, K. C. (2004). Compilers and interpreters. In Computer Science Handbook, Second Edition (pp. 99-1-99–30). CRC Press. https://doi.org/10.1007/978-1-4757-2937-5_13

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free