|n.||1.||One who compiles; esp., one who makes books by compilation.|
|2.||(Computers) a computer program that decodes instructions written in a higher-level computer language to produce an assembly-language program or an executable program in machine language.|
|Noun||1.||compiler - a person who compiles (or writes for) encyclopedias|
|2.||compiler - (computer science) a program that decodes instructions written in a higher order language and produces an assembly language program|
Synonyms: compiling program
|(programming, tool)||compiler - A program that converts another program
from some source language (or programming language) to
machine language (object code). Some compilers output
assembly language which is then converted to machine language by a separate assembler.|
A compiler is distinguished from an assembler by the fact that each input statement does not, in general, correspond to a single machine instruction or fixed sequence of instructions. A compiler may support such features as automatic allocation of variables, arbitrary arithmetic expressions, control structures such as FOR and WHILE loops, variable scope, input/ouput operations, higher-order functions and portability of source code.
AUTOCODER, written in 1952, was possibly the first primitive compiler. Laning and Zierler's compiler, written in 1953-1954, was possibly the first true working algebraic compiler.
See also byte-code compiler, native compiler, optimising compiler.