[Haskell-cafe] First steps in Haskell
Wolfgang Jeltsch
wolfgang at jeltsch.net
Mon Dec 19 04:56:25 EST 2005
Am Sonntag, 18. Dezember 2005 17:42 schrieb Daniel Carrera:
> Lemmih wrote:
> > GHC is a compiler. If you want to compile to a binary then you must
> > define a function called 'main'. Otherwise just load the file in ghci
> > (`ghci fac.hs`).
>
> I would expect GHC to be able to compile a program with a function that
> is not called 'main'. I wouldn't expect it to print anything when run,
> but I would expect it to compile.
So you want a program that doesn't contain a main variable to be compiled into
an executable which does nothing? This doesn't seem to make much sense.
In addition, Haskells requirement of a main variable is nothing new. Take C,
C++, Java, PASCAL. They all require you to somehow specify a main
program/function/method.
> `ghci fac.hs` doesn't give any errors. I don't understand why loading
> the file like that is ok but typing the entries is not.
Because the interactive environments are about evaluating expressions based on
declarations which were made in Haskell source files, not about creating new
declarations. Expressions and declarations are just two different things. I
think, Cale explained why it might be a bad idea to allow entering
declarations at the command line.
> This might be a problem for people exporing the language.
Hmm, don't know.
> Best,
> Daniel.
Best wishes,
Wolfgang
More information about the Haskell-Cafe
mailing list