wiki:WikiStart

Version 50 (modified by simonmar, 8 years ago) (diff)

--

Welcome to the GHC Developer Wiki

This is the home for GHC developers, one place for all the resources related to developing GHC. If you're only interested in using GHC, then you probably want The GHC home page instead.

Please help us improve the information here. You can easily do this by editing the wiki directly. Just log in as user guest with password guest. The "Help/Guide" link at the top of every page gives a good description of the markup language etc.

For a complete list of local wiki pages, see TitleIndex.

NEW!

Would you like a job working on GHC? (NOTE: deadline for applications is Friday 23 June)

We're looking for comments on the possibility of organising a GHC Hackathon around ICFP this year.

Release cycle status

  • 6.4.2 has been released. It looks like there will be a 6.4.3, see the list of outstanding bugs below.
  • Development continues on the darcs repository, which will shortly be branched for the 6.6 release.

Downloading snapshots

  • Download snapshots here. This link also gets you to a typeset user manual for the current snapshot.

The bug tracker

The Code

Our source code is kept in a collection of darcs repositories.

We recently transitioned from using CVS as our revision control system to darcs. The darcs repositories have full history, but in case you need to look at the CVS trees:

Getting Started

How to get started with hacking on GHC:

Mailing lists

GHC developers hang out on the cvs-ghc mailing list. This list also receives the following:

  • checkins on the main ghc repository
  • patches sent by darcs send
  • nightly build reports

The traffic level varies quite a bit depending on how much activity there is.

Checkins for packages are reported on the cvs-libraries mailing list. To get mail from all the cvs-* lists, subscribe to the cvs-all mailing list (but don't post there, please).

Developer Documentation

  • The Building Guide: Information on how to build GHC from sources and port GHC to a new platform.
  • DebuggingGhcCrashes: how to use gdb to debug a crash in GHC-compiled code.
  • AddingNewPrimitiveOperations: How to add new primitive operations to GHC Haskell.
  • The GHC Commentary: Information on the internals of GHC, in various states of up-to-dateness.
  • GhcPapers: papers and pointers to other documents that relate to the inner workings of GHC.
  • Platforms which platforms GHC currently supports.
  • GarbageCollectorNotes Notes about GHC's existing single threaded garbage collector and development of a parallel GC.
  • ModuleDependencies: A listing of the dependencies between modules of the compiler.
  • BeginnersNotes: Some notes about getting started hacking GHC and the structure of the compiler (especially types and typecheck)
  • BackEndNotes: Some ideas and notes about the back end.

Contributors