1.1.1 Linguagem interpretada

Linguagens de programação são freqüentemente classificadas como compiladas ou interpretadas. Nas compiladas, o texto (ou código-fonte) do programa é lido por um programa chamado compilador, que cria um arquivo binário, executável diretamente pelo hardware da plataforma-alvo. Exemplos deste tipo de linguagem são C ou Fortran. A compilação e execução de um programa simples em C segue algo como:

    % cc hello.c -o hello
    % ./hello
    Hello World

onde cc é o programa compilador, hello.c é o arquivo de código-fonte, e o arquivo criado, hello, é um executável binário.

Em contrapartida, programas escritos em linguagens interpretadas não são convertidos em um arquivo executável. Eles são executados utilizando um outro programa, o interpretador, que lê o código-fonte e o interpreta diretamente, durante a sua execução. Exemplos de linguagem interpretada incluem o BASIC tradicional, Perl e Python. Para executar um programa Python contido no arquivo hello.py, por exemplo, utiliza-se algo como:

    % python hello.py
    Hello World

Note que o programa que executamos diretamente é o interpretador python, fornecendo como parâmetro o arquivo com código-fonte hello.py. Não há o passo de geração de executável; o interpretador transforma o programa especificado à medida em que é executado.