ghc: The GHC API
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.
Modules
[Index] [Quick Jump]
- GHC
- Builtin
- ByteCode
- GHC.Cmm
- GHC.Cmm.BlockId
- GHC.Cmm.CLabel
- GHC.Cmm.CallConv
- GHC.Cmm.CommonBlockElim
- GHC.Cmm.ContFlowOpt
- GHC.Cmm.Dataflow
- GHC.Cmm.DebugBlock
- GHC.Cmm.Expr
- GHC.Cmm.Graph
- GHC.Cmm.Info
- GHC.Cmm.LayoutStack
- GHC.Cmm.Lexer
- GHC.Cmm.Lint
- GHC.Cmm.Liveness
- GHC.Cmm.MachOp
- GHC.Cmm.Monad
- GHC.Cmm.Node
- GHC.Cmm.Opt
- GHC.Cmm.Parser
- GHC.Cmm.Pipeline
- GHC.Cmm.Ppr
- GHC.Cmm.ProcPoint
- GHC.Cmm.Sink
- GHC.Cmm.Switch
- GHC.Cmm.Type
- GHC.Cmm.Utils
- GHC.CmmToAsm
- GHC.CmmToAsm.BlockLayout
- GHC.CmmToAsm.CFG
- GHC.CmmToAsm.CPrim
- GHC.CmmToAsm.Config
- GHC.CmmToAsm.Dwarf
- GHC.CmmToAsm.Format
- GHC.CmmToAsm.Instr
- GHC.CmmToAsm.Monad
- GHC.CmmToAsm.PIC
- PPC
- GHC.CmmToAsm.Ppr
- Reg
- GHC.CmmToAsm.Reg.Graph
- GHC.CmmToAsm.Reg.Linear
- GHC.CmmToAsm.Reg.Linear.Base
- GHC.CmmToAsm.Reg.Linear.FreeRegs
- GHC.CmmToAsm.Reg.Linear.JoinToTargets
- GHC.CmmToAsm.Reg.Linear.PPC
- GHC.CmmToAsm.Reg.Linear.SPARC
- GHC.CmmToAsm.Reg.Linear.StackMap
- GHC.CmmToAsm.Reg.Linear.State
- GHC.CmmToAsm.Reg.Linear.Stats
- GHC.CmmToAsm.Reg.Linear.X86
- GHC.CmmToAsm.Reg.Linear.X86_64
- GHC.CmmToAsm.Reg.Liveness
- GHC.CmmToAsm.Reg.Target
- GHC.CmmToAsm.Reg.Utils
- SPARC
- X86
- GHC.CmmToC
- GHC.CmmToLlvm
- GHC.Core
- GHC.Core.Class
- GHC.Core.Coercion
- GHC.Core.ConLike
- GHC.Core.DataCon
- GHC.Core.FVs
- GHC.Core.FamInstEnv
- GHC.Core.InstEnv
- GHC.Core.Lint
- GHC.Core.Make
- GHC.Core.Map
- GHC.Core.Multiplicity
- Opt
- GHC.Core.Opt.Arity
- GHC.Core.Opt.CSE
- GHC.Core.Opt.CallArity
- GHC.Core.Opt.ConstantFold
- GHC.Core.Opt.CprAnal
- GHC.Core.Opt.DmdAnal
- GHC.Core.Opt.Exitify
- GHC.Core.Opt.FloatIn
- GHC.Core.Opt.FloatOut
- GHC.Core.Opt.LiberateCase
- GHC.Core.Opt.Monad
- GHC.Core.Opt.OccurAnal
- GHC.Core.Opt.Pipeline
- GHC.Core.Opt.SetLevels
- GHC.Core.Opt.Simplify
- GHC.Core.Opt.SpecConstr
- GHC.Core.Opt.Specialise
- GHC.Core.Opt.StaticArgs
- GHC.Core.Opt.WorkWrap
- GHC.Core.PatSyn
- GHC.Core.Ppr
- GHC.Core.Predicate
- GHC.Core.Rules
- GHC.Core.Seq
- GHC.Core.SimpleOpt
- GHC.Core.Stats
- GHC.Core.Subst
- GHC.Core.Tidy
- TyCo
- GHC.Core.TyCon
- GHC.Core.Type
- GHC.Core.Unfold
- GHC.Core.Unify
- GHC.Core.UsageEnv
- GHC.Core.Utils
- GHC.CoreToByteCode
- GHC.CoreToIface
- GHC.CoreToStg
- Data
- Driver
- GHC.Hs
- GHC.HsToCore
- Iface
- GHC.IfaceToCore
- GHC.Llvm
- GHC.Parser
- Platform
- GHC.Plugins
- GHC.Prelude
- Rename
- Runtime
- GHC.Settings
- Stg
- GHC.StgToCmm
- GHC.StgToCmm.ArgRep
- GHC.StgToCmm.Bind
- GHC.StgToCmm.CgUtils
- GHC.StgToCmm.Closure
- GHC.StgToCmm.DataCon
- GHC.StgToCmm.Env
- GHC.StgToCmm.Expr
- GHC.StgToCmm.ExtCode
- GHC.StgToCmm.Foreign
- GHC.StgToCmm.Heap
- GHC.StgToCmm.Hpc
- GHC.StgToCmm.Layout
- GHC.StgToCmm.Monad
- GHC.StgToCmm.Prim
- GHC.StgToCmm.Prof
- GHC.StgToCmm.Ticky
- GHC.StgToCmm.Types
- GHC.StgToCmm.Utils
- GHC.SysTools
- Tc
- GHC.ThToHs
- Types
- GHC.Unit
- Utils
Flags
Manual Flags
Name | Description | Default |
---|---|---|
ghci | Build GHCi 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 |
Automatic Flags
Name | Description | Default |
---|---|---|
dynamic-system-linker | The system can load dynamic code. This is not the case for musl. | Enabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- ghc-9.0.2.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- 0, 8.2.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, 8.10.7, 9.2.1, 9.2.2, 9.2.3, 9.2.3.20220620, 9.2.4, 9.2.5, 9.2.6, 9.2.7, 9.2.8, 9.4.0.20220623, 9.4.2, 9.4.3, 9.4.4, 9.6.0.20230111, 9.6.0.20230128, 9.6.0.20230210, 9.6.0.20230302, 9.6.1, 9.6.2, 9.6.3, 9.8.0.20230919, 9.8.0.20230929, 9.8.1, 9.10.1
Versions [RSS] | 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, 8.10.7, 9.0.2, 9.2.1, 9.2.2, 9.2.3, 9.2.3.20220620, 9.2.4, 9.2.5, 9.2.6, 9.2.7, 9.2.8, 9.4.1, 9.4.2, 9.4.3, 9.4.4, 9.4.5, 9.4.6, 9.4.7, 9.4.8, 9.6.1, 9.6.3, 9.6.4, 9.6.5, 9.6.6, 9.8.1, 9.8.2, 9.10.1 (info) |
---|---|
Dependencies | array (>=0.1 && <0.6), base (>=4.11 && <4.16), binary (>=0.8 && <0.9), bytestring (>=0.9 && <0.11), containers (>=0.6.2.1 && <0.7), deepseq (>=1.4 && <1.5), directory (>=1 && <1.4), exceptions (>=0.10 && <0.11), filepath (>=1 && <1.5), ghc-boot (==9.0.2), ghc-boot-th (==9.0.2), ghc-heap (==9.0.2), ghci (==9.0.2), hpc (>=0.6 && <0.7), process (>=1 && <1.7), template-haskell (>=2.17 && <2.18), terminfo (>=0.4 && <0.5), time (>=1.4 && <1.10), transformers (>=0.5 && <0.6), 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 wz1000 at 2021-12-28T16:05:34Z |
Distributions | Arch:9.2.8, Debian:8.10.7, Fedora:9.4.5, NixOS:9.6.6 |
Reverse Dependencies | 317 direct, 14548 indirect [details] |
Downloads | 11548 total (165 in the last 30 days) |
Rating | 2.5 (votes: 6) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user [build log] All reported builds failed as of 2021-12-28 [all 2 reports] |