On 12/18/05, Daniel Carrera <[EMAIL PROTECTED]> wrote:
> 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.

It can. To compile a module use the "-c" ('c' for "compile"). If you
want an executable you will need to have an entry-point (which is
main).

Typically you would write your program in a file, have a main
function, and then write

ghc --make MyMainModule.hs -o MyExecutableName

Optionally adding "-O" or "-O2" for optimisation.

The "--make" flag is really useful as it will cause GHC to track down
dependencies automatically and compile them if needed (reducing the
need for makefiles etc.).

/S

--
Sebastian Sylvan
+46(0)736-818655
UIN: 44640862
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to