Compiled language

From Wikipedia, the free encyclopedia

A compiled language is a programming language whose implementations are typically compilers (translators which generate machine code from source code), and not interpreters (step-by-step executors of source code, where no translation takes place).

The term is somewhat vague; in principle any language can be implemented with a compiler or with an interpreter. A combination of both solutions is also increasingly common: a compiler can translate the source code into some intermediate form (often called bytecode), which is then passed to an interpreter which executes it.

A program translated by a compiler tends to be much faster than an interpreter executing the same program: even a 10:1 ratio is not uncommon. The mixed solution's efficiency is typically somewhere in between. The downsides of the "compiler" solution are the inherent complexity of a good implementation, and longer edit-run cycles.

A pure compiler implementation is the typical solution for low-level languages, because it comes out as more "natural", and because of efficiency concerns; however with some effort it is always possible to write compilers even for traditionally interpreted languages such as Lisp and Prolog.

Contents

[edit] Languages

Some languages that are commonly considered to be compiled:

[edit] Tools

[edit] See also

[edit] External links