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. 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.2/docs/html/users_guide/win32-dlls.html#windows-file-paths


Loading comments...