Haskell/Carregando arquivos

Até este ponto, Haskell foi tratado apenas em modo iterativo. Ou seja, dados são escritos no interpretador, e este executa o que se pede. Obviamente, esta é uma forma muito ruim de escrever programas.

A forma usual é escrever um arquivo com as instruções e carregá-lo.

O comando do interpretador para carregar um arquivo é:

Prelude> :load arquivo.hs

onde foi adotada a extensão padrão .hs para os arquivos.

Uma diferença entre instruções em um arquivo e instruções para o interpretador é que, no arquivo, não é usado o let para definir as constantes e funções.

Por exemplo, copie e cole o arquivo seguinte para um arquivo de nome, digamos, area.hs (obs: não é preciso definir π, que já está definido na linguagem como pi):

pi1 = 3.14159265358979323846264338327950
area r = pi1 * r^2

Carregue o arquivo com:

Prelude> :load area.hs

e execute:

*Main> area 10

Será obtido o valor 314.1592653589793.

Se o arquivo já foi carregado, mas foi modificado, então deve-se usar :reload:

Prelude> :reload area.hs