# GHC (Glasgow Haskell Compiler)

22 Hacker News commenters recommended GHC (Glasgow Haskell Compiler) and 15 criticized it, November 2025 to November 2026. It was recommended in 7 of 13 months.

**Verdict:** Widely recommended Haskell compiler, praised for smart incremental recompilation, concurrency and a working WebAssembly backend. Critics point to hard-to-bootstrap, non-reproducible builds.

## Why people recommend it

- Smart incremental recompilation (4 comments): "I recommend anybody who's interested in incremental recompilation to read what GHC does, because the effort to achieve that is relatively low." ([source](https://news.ycombinator.com/item?id=49087037)) "Haskell has `ghc --make` which compiles the whole project in one compiler invocation, with very smart recompilation avoidance" ([source](https://news.ycombinator.com/item?id=47294164)) "I recommend anybody who's interested in incremental recompilation to read what GHC does" ([source](https://news.ycombinator.com/item?id=49086956))
- Robust, works out of the box (2 comments): "Demonstrating GHC's ability to compile itself to WASM is thus a show that it is robust enough to compile a very complicated program" ([source](https://news.ycombinator.com/item?id=45783959)) "GHC and the RTS work flawlessly out of the box" ([source](https://news.ycombinator.com/item?id=47708512))
- Strong WebAssembly backend (3 comments): "Demonstrating GHC's ability to compile itself to WASM is thus a show that it is robust enough to compile a very complicated program" ([source](https://news.ycombinator.com/item?id=45783959)) "Upstream ghc cancompile to wasm for several major releases now" ([source](https://news.ycombinator.com/item?id=48814245)) "it demonstrates how far the ghc wasm backend has come" ([source](https://news.ycombinator.com/item?id=45784909))

## What people warn about

- Hard to bootstrap from source (3 comments): "it is hard to take a language seriously or trust it with no way to bootstrap it from source" ([source](https://news.ycombinator.com/item?id=45785073)) "Your link details building GHC with an existing non reproducible GHC compiler binary" ([source](https://news.ycombinator.com/item?id=45789571)) "GHC has a recursive dependency on itself with no way to go back before that loop." ([source](https://news.ycombinator.com/item?id=45790284))
- Non-reproducible output across builds (2 comments): "The Haskell compiler creates a slightly different output every time you compile a program" ([source](https://news.ycombinator.com/item?id=45787644)) "Your link details building GHC with an existing non reproducible GHC compiler binary" ([source](https://news.ycombinator.com/item?id=45789571))
- Needs extensions or compiler flags (3 comments): "I've written anything in Haskell, I feel like I have to do a million compiler extensions" ([source](https://news.ycombinator.com/item?id=49862539)) "Having to enable them in the code is just a hassle." ([source](https://news.ycombinator.com/item?id=48222164)) "I would be fighting GHC usually with some flags" ([source](https://news.ycombinator.com/item?id=46915258))

## Alternatives hackers recommend

- [GCC](https://hackerapproved.com/p/gcc.md): 138 recommend
- [Clang](https://hackerapproved.com/p/clang.md): 74 recommend
- [Free Pascal compiler](https://hackerapproved.com/p/free-pascal.md): 38 recommend
- [GraalVM Native Image](https://hackerapproved.com/p/graalvm-native-image.md): 31 recommend
- [.NET Native AOT](https://hackerapproved.com/p/net-native-aot.md): 26 recommend

## Cite as

Hacker Approved, "GHC (Glasgow Haskell Compiler)", https://hackerapproved.com/p/ghc/ (counts from 1,795,640 Hacker News comments, November 2025 to November 2026).
