Home > Software > Development > Haksell > GHC

GHC logo


Package ID


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.

        *NOTE: This package contains only the compiler. If you are looking to setup a system from scratch please look at `haskell-dev` instead.

        There's an important change to path handling for Windows starting with 8.6.1.
        These changes mean that Haskell programs are no longer constraint to `MAX_PATH`.  So passing a long path to `openFile` will just work.
        There are a few caveats to this such as you can't access `COM` devices via `COM1` etc anymore and instead need to use the full path `\\.\COM1` etc.
        This is all documented https://downloads.haskell.org/~ghc/8.6.5/docs/html/users_guide/win32-dlls.html#windows-file-paths


Loading comments...