GHC is a state-of-the-art, open source, compiler and
interactive environment for the functional language Haskell. Highlights:
- GHC supports the entire Haskell 2010 language plus a wide
variety of extensions.
- GHC has particularly good support for concurrency
and parallelism,
including support for Software
Transactional Memory (STM).
- GHC generates fast code, particularly for concurrent
programs. Take a look at GHC's performance on
The Computer Language Benchmarks Game.
- GHC works on
several platforms
including Windows, Mac, Linux, most
varieties of Unix, and several different processor
architectures. There are detailed instructions
for porting GHC to a new platform.
- GHC has extensive optimisation capabilities, including
inter-module optimisation.
- GHC compiles Haskell code either directly to native
code or using LLVM as a
back-end. GHC can also generate C code as an intermediate
target for porting to new platforms.
The interactive
environment compiles Haskell to bytecode, and supports
execution of mixed bytecode/compiled programs.
- Profiling
is supported, both by time/allocation and various kinds of heap
profiling.
- GHC comes with several
libraries,
and thousands more are available
on Hackage.
GHC is heavily dependent on its users and contributors.
Please come and join the mailing lists and send us your comments, suggestions, bug reports
and contributions!
This site is maintained by Ben Gamari. Please send me comments, questions and reports of any problems to do with the site.