package mounting

Frederik Eaton frederik at a5.repetae.net
Wed Jun 29 00:43:01 EDT 2005


I like your proposal and I think that some form of it should be
implemented. Here is the section of my original post where I talk
about it:

> One further thing, there have been proposals to simplify the importing
> of collections of modules from a certain point in the namespace, etc.
> I hope it is realized that they are independent from my proposal. They
> would not be very useful in implementing my proposal, at least I think
> any such solution would be far from optimal; and vice-versa. Modules
> and packages are quite distinct constructs, modules are needed for
> namespace partitioning and packages are needed to delineate
> administrative boundaries and sources of change. Both are necessary
> and both deserve special consideration in the ongoing design of
> Haskell.

I still feel this way.

Obviously there is some overlap in functionality but unless you want
to either bind what's normally under Graphics.UI.Gtk at the namespace
root everywhere in the project, or mount the library at some sort of
short prefix like Gtk and use Gtk.Button.label everywhere - and
neither of these is really suitable - one can't use package mounting
to implement your proposed feature.

And as with any other feature which exists within the language, your
proposal can't distinguish between modules of the same name coming
from different packages, so it couldn't be used to build a program's
module namespace by mounting individual package namespaces at
specified locations (and allowing these package namespaces to have
modules of the same name defined), which is what I'm trying to do.

It's like the difference between filesystem mounting and a PATH
environment variable.

Hope this makes sense.

Frederik

On Mon, Jun 27, 2005 at 12:20:04PM +0100, Malcolm Wallace wrote:
> "Simon Marlow" <simonmar at microsoft.com> writes:
> 
> > , Frederik Eaton wrote:
> > 
> > > It looks like there's been a bit of recent discussion regarding module
> > > and package namespaces.
> > 
> > This idea has been raised before, but it was a while back, and we called
> > it "grafting".
> 
> I concur with Simon that the mounting proposal has similarities to the
> grafting proposal.  I also concur that opinions may have changed since
> the previous discussion, so it is worthwhile bringing it up again.
> 
> I also wonder whether (or to what extent) mounting/grafting could
> address (or conflict with) the question of qualified name exports
> expressed in this thread:
> 
>     http://www.haskell.org//pipermail/libraries/2004-December/002800.html
>     http://www.haskell.org//pipermail/libraries/2005-March/003390.html
> 
> Regards,
>     Malcolm
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://www.haskell.org/mailman/listinfo/libraries
> 

-- 
http://ofb.net/~frederik/


More information about the Libraries mailing list