December 18, 2004
Branching the CVS tree of GHC
This is my first entry in a series on my work on Pluggable GHC, a new version of GHC that will allow users to write plugins which may be loaded at GHC run-time to do things such as parse language extensions, provide better error messages, and perform custom optimisation passes.
This entry concerns branching on the GHC CVS tree. I was originally just going to branch in the ghc directory (which contains just the compiler and some useful utilities). I wanted to do this because I didn't think we'd be messing with the libraries.
But this was a silly assumption - we might well modify the GHC package which may in turn affect other libraries. But more importantly, this is a major split from the GHC HEAD which is a quickly evolving branch. What if someone changes the build system (i.e. the Makefiles and associated configuration scripts)? If we only branch in the ghc sub-directory then we are in trouble - we will be unnecessarily affected by changes people are performing to a branch entirely separate from ours. We want to be protected from such possible changes.
Therefore I'm just going to check out ghc and the libraries (and no other projects) and branch in the main (the fptools) directory.