[Haskell-cafe] instance Binary UTCTime (Was: Oprhan instances)
duncan.coutts at googlemail.com
Mon Nov 30 05:35:04 EST 2009
On Sun, 2009-11-29 at 19:38 -0800, Alexander Dunlap wrote:
> > Then the other bit you suggested foomonad >= 4.0 && < 4.1 && HAS_MTL
> > would be needed to be able to express that you want a package that has
> > been built with a particular optional instance provided. This is the bit
> > that cannot be translated into packages in most distros. Yes you could
> > pick the flags up front, but you have to pick a single assignment that
> > satisfies everyone.
> Well, that happens anyway with most packages since distros have to
> choose one set of flags that works. The proposal I was commenting on
> would just allow packages to depend on flags of other packages and so
> be explicit about this.
Ah but flags are not allowed to change the public exported API of a
library. That's why we do not need to depend on packages with flags set.
This is an important property because it means you do not need multiple
instances of a package version, any set of flags will do.
Note that one distro that does have this feature of being able to depend
on packages built with a particular flag is Gentoo. I don't know of any
binary distros that do this.
> >> It seems to me that distros could even offer multiple options for the
> >> same package with different flags set.
> > Most distros cannot handle installing multiple instances of the same
> > version of a package.
> Well, what I've seen is having different packages, i.e.
> foo-quickcheck, foo-no-quickcheck as separate packages.
I think you'll find that distros do not like it, especially once there
is more than one flag, since the number of combinations goes up
More information about the Haskell-Cafe