Toolchain · 1992

GHC

Compiler for the Haskell programming language.

Official site ›
GHC logo
Haskell, C, Lazy MLWritten in
1992First released
University of GlasgowBuilt by
3-clause BSD LicenseLicense
Built from GHC HaskellCLazy ML
CompilerRuntimeBootstrap

Glasgow Haskell Compiler.

What is GHC written in?

The GHC compiler is written in Haskell (well-documented). Its runtime is implemented in C (well-documented). GHC uses a bootstrap chain from Lazy ML (well-documented). GHC is self-hosting.

What GHC is used for

GHC is the standard Haskell compiler, used to build essentially all production Haskell, with an advanced optimizer and a C-based runtime for lazy evaluation and concurrency.

Used by: the Cardano blockchain, the pandoc converter, and most Haskell software.

Quick Facts

Developer
University of Glasgow
First released
1992
License
3-clause BSD License

About GHC

GHC is a compiler for the Haskell programming language.

GHC first appeared in 1992. Development is led by University of Glasgow.

How GHC is implemented

In the Language Lineage dataset, GHC is self-hosting, so its own compiler is written in GHC itself, its runtime is implemented in C, and its toolchain was bootstrapped from Lazy ML. Reaching self-hosting, where a language is mature enough to compile itself, is a milestone that proves the language can handle a large, real-world program.

Sources: Wikipedia · Wikidata · Official site

Frequently Asked Questions

What language is GHC written in?
GHC is primarily implemented in Haskell and C and Lazy ML. See the implementation section above for details and source references.
Is GHC self-hosting?
Yes, GHC is self-hosting, its compiler can compile itself.
When was GHC first released?
GHC was first released in 1992.

Evidence Sources

Discover More

Explore GHC in Graph →