Claus Reinke wrote:

Instead of working around them in each individual case, I'd really like to see general solutions to the two issues of

1 updating ghc-paths and notifying existing clients
2 making (some) ghc api clients less dependent on a single ghc    version

Most suggestions about this have been shot down in the past, iirc,
the closest to being possible were dynamic linking for 1 and some
cross-ghc-version reading of .hi-files for 2 (at the risk of losing information, because the .hi-format itself would still change; so this would work only for some ghc api clients, and only for a limited range of ghc versions, but haddock ought to be among those clients).

dynamic linking will solve (1), but at this stage I don't think we have time to get dynamic linking fully working and in the binary distributions for 6.10.1. We might have it working in a build-from-source form, though.

As I've said before regarding (2), it's feasible to make the .hi format stable across minor releases of GHC, but not major releases. Making an extensible .hi format seems completely unrealistic - it's not just the format that changes, but the semantics. "Losing inforamtion" might be completely disastrous if you actually *needed* that information. Not to mention the fact that trying to do both forwards and backwards compatibility in anything but a trivial way gives you a quadratic-sized testing surface, which is something we really have to worry about.

Cheers,
        Simon

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to