Escrever ou não escrever 'module Main where` em Haskell
A especificação Haskell 98 diz que o ponto de entrada de um programa, ou seja, a funçãomain
, deve residir no módulo chamado Main, por convenção. No entanto, mesmo que você não escrevamodule Main where
no topo do arquivo que você escrevemain
em, o código-fonte compila e parece funcionar corretamente quando você está usando o GHC.
A questão é:
Qual é a diferença entre escrevermodule Main where
e não escrevendo?Qual deles é o preferido?