Contrib packages
Martin Sjögren
md9ms@mdstud.chalmers.se
08 May 2003 15:21:21 +0200
--=-ruraRmcOBYRymnc4Fwio
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
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" <bfulgham@debian.org> [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.
> > >=20
> > > This sounds a lot like the Common Lisp compiler system.
> >=20
> > 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.
>=20
> 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
--=20
Martin Sj=F6gren
sjogren@debian.org -- marvin@dum.chalmers.se
GPG key: http://www.mdstud.chalmers.se/~md9ms/gpg.html
let hello =3D "hello" : hello in putStr (unlines hello)
--=-ruraRmcOBYRymnc4Fwio
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: Detta =?ISO-8859-1?Q?=E4r?= en digitalt signerad
meddelandedel
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQA+ulnRGpBPiZwE9FYRAoUJAJ0XXPGrXcgv/Qnnt3VmcjlTiyjqDACgsIYi
ZukWsMeDqNKFs2JX7WXNpcQ=
=NjjB
-----END PGP SIGNATURE-----
--=-ruraRmcOBYRymnc4Fwio--