[Haskell-cafe] First steps in Haskell
sebastian.sylvan at gmail.com
Sun Dec 18 12:18:33 EST 2005
On 12/18/05, Daniel Carrera <daniel.carrera at zmsl.com> 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
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.).
More information about the Haskell-Cafe