
tor 2003-05-08 klockan 14.27 skrev Ian Lynagh:
On Thu, May 08, 2003 at 08:36:01AM +0200, Michael Weber wrote:
* "Brent A. Fulgham"
[2003-05-07T22:54-0700]: On Wednesday 07 May 2003 10:00 am, Ian Lynagh wrote:
Then, when a new library is installed it would be rebuilt for any implementations installed and registered, and when GHC is upgraded it would rebuild all the libraries installed and registered. This nicely solves the problem of changing binary formats. The only subtlety I can see is making sure things get built in the right order when installing multiple packages at once.
This sounds a lot like the Common Lisp compiler system.
This sounds a lot like what I proposed aeons ago on one of the ghc mailing lists - I think. It's long ago and I don't have a reference handy now, sorry. It got shot down for some technical reasons, or complexity or so, IIRC. SimonM might remember.
It is slightly more complex than other approaches, but I think it is significantly nicer from the sysadmin and user's point of view.
On the other hand, when something breaks, they break quite badly. Using exact-version dependencies on ghc means that some packages will hold others back, but at least *things won't break*. One big problem with recompile-on-the-fly is that you need all the build dependencies installed, which are usually a lot different from the binary dependencies. The whole idea with binary distribution is that you don't need a build environment (granted, you normally have a haskell compiler installed if you're using haskell libraries) and build dependencies can be very very extensive. /Martin -- Martin Sjögren sjogren@debian.org -- marvin@dum.chalmers.se GPG key: http://www.mdstud.chalmers.se/~md9ms/gpg.html let hello = "hello" : hello in putStr (unlines hello)