El documento describe la evolución de los compiladores desde su origen en 1946 hasta los tipos modernos. Los primeros compiladores traducían lenguajes de alto nivel como FORTRAN a código máquina. Ahora existen compiladores optimizadores, de una o varias pasadas, cruzados y JIT. El proceso de compilación incluye análisis léxico, sintáctico, semántico y generación de código intermedio y objeto, usando estructuras de datos como tablas de símbolos y literales.