|
Version 12 (modified by simonpj, 7 years ago)
|
|
--
|
0. Overview (SPJ)
1. Building (SM)
- Getting the code (do a live build...)
- Setting up the build
- Building
- tweaking & recompiling, etc.
- how libraries/packages are built
- ghc-inplace vs. installed ghc, how does it run inplace (find its bits)
- how to "use" the build system and common tasks, pointer to docs
- using/extending the testsuite
2. The Compiler
- Roadmap: compiling a single module
- Source-language syntax: HsSyn
- Names: RdrName and OccName, Name
- Entities: variables, type constructors, data constructors, and classes.
- Types: Type
- The core language.
- Cmm.
- SPJ renamer, typechecker, desugarer, core->core
- SPJ ModIface?, ModDetails?, ModGuts?
- SPJ Core->CorePrep?->Stg->Cmm
- SM PrimOPs: primops.txt.pp - what is generated from it?
- SM GHC API
- SM HscMain? upwards: ModSummary?, Finder, upsweep, downsweep,
3. Back end (SM)
- SM execution model STG + eval/apply
- SM Cmm->NCG
- SM Cmm->BCO (simple compilation scheme, no primops: GHC.PrimopWrappers?)
- SM Cmm->C
Download in other formats: