Isaac Jones ijones at
Wed May 18 13:11:44 EDT 2005

"S. Alexander Jacobson" <alex at> writes:

> With Cabal, if you download two packages, how do you know that they
> won't require conflicting versions of another module/package?

That's specified by the dreaded build-depends field, of course.

> The reality is that, no matter what, you always have to assume that
> the user and author of a particular module/package need to live in
> basically the same universe of modules and packages.
> The advantage of SearchPath over the status quo is that its module
> maps make this universe explicit and versionable rather than tacit and
> unidentifiable.

There you go again.

> The implicit maps of Cabal's "build-depends" are an invitation for
> conflict.  

What's implicit about build-depends again?

> You have no particularly good reason to assume that any two
> packages will be compatible.  

You don't have to assume anything.  The packager tells you which
packages are compatible.


> SearchPath's explicit shared module maps makes it much less likely
> that author and user will end up with different meanings for a
> particular module name and make it much less likly that the user
> won't be able to resolve module dependencies, making code reuse much
> more likely.

You're comparing apples to oranges.  Hackage (not cabal) ensures that
the end user can resolve module dependencies.



More information about the Libraries mailing list