
Martin Sjögren wrote:
I have no idea how backwards compatible ghc is with respect to libraries. If the ABI changes a lot between releases, that's a problem, but if it's moderately predictable we can have dependencies on the form ghc5 (>= X.Y), ghc5 (<< X.Y+1) I don't see why that won't work. [...]
In a nutshell: It doesn't work, even if only the patchlevel of GHC changes and the user-visible ABI stays the same. As has been discussed several times, this is the price one has to pay for the heavy inter-module optimizations GHC does. And recompilation is not always an option, either, e.g. when the package in question has some native parts which rely on development stuff (headers, program generators, etc.) which is normally not installed on the target. So we're basically left with two kinds of packages, IMHO: * Pre-compiled ones, tied to a particular compiler release * Source packages for "real" developers, not just Haskell users Cheers, S.