ghc: The GHC API

[ bsd3, development, library ] [ Propose Tags ]

GHC's functionality can be useful for more things than just compiling Haskell programs. Important use cases are programs that analyse (and perhaps transform) Haskell code. Others include loading Haskell code dynamically in a GHCi-like manner. For this reason, a lot of GHC's functionality is made available through this package.

See https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler for more information.

Versions [RSS] [faq] 8.2.1, 8.2.2, 8.4.1, 8.4.3, 8.4.4, 8.6.1, 8.6.4, 8.6.5, 8.8.1, 8.8.3, 8.10.1, 8.10.2, 9.0.2, 9.2.1
Dependencies array (>=0.1 && <0.6), base (>=4.11 && <4.17), binary (==0.8.*), bytestring (>=0.9 && <0.12), containers (>=0.6.2.1 && <0.7), deepseq (==1.4.*), directory (>=1 && <1.4), exceptions (==0.10.*), filepath (>=1 && <1.5), ghc-boot (==9.2.1), ghc-heap (==9.2.1), ghci (==9.2.1), hpc (==0.6.*), parsec, process (>=1 && <1.7), template-haskell (==2.18.*), terminfo (==0.4.*), time (>=1.4 && <1.12), transformers (==0.5.*), unbuildable (>1 && <1), unix (>=2.7 && <2.9), Win32 (>=2.3 && <2.13) [details]
License BSD-3-Clause
Author The GHC Team
Maintainer glasgow-haskell-users@haskell.org
Category Development
Home page http://www.haskell.org/ghc/
Uploaded by BenGamari at 2021-10-29T15:08:48Z
Distributions Arch:9.0.2, Debian:8.6.2, Fedora:8.10.5, NixOS:8.10.7
Downloads 5917 total (101 in the last 30 days)
Rating 2.25 (votes: 4) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index] [Quick Jump]

Manual Flags

NameDescriptionDefault
internal-interpreter

Build with internal interpreter support.

Disabled
stage1

Is this stage 1?

Disabled
stage2

Is this stage 2?

Disabled
stage3

Is this stage 3?

Disabled
terminfo

Build GHC with terminfo support on non-Windows platforms.

Enabled
dynamic-system-linker

The system can load dynamic code. This is not the case for musl.

Enabled
Automatic Flags
NameDescriptionDefault

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates