dons at galois.com
Mon Sep 6 16:51:26 EDT 2010
> On Mon, Sep 6, 2010 at 5:29 AM, Ivan Lazar Miljenovic
> <ivan.miljenovic at gmail.com> wrote:
> > On 6 September 2010 21:57, han <e at xtendo.org> wrote:
> >> So the question is: Do you agree that "Graphics.Rendering.OpenGL" actually
> >> should have been "Graphics.OpenGL" (or just OpenGL) for wieldiness?
> > I think Graphics.OpenGL would have sufficed, unless there was
> > sufficient reason to want to group it with other rendering-specific
> > modules.
> I'm relatively new to the Haskell community, and one thing that's
> bugged me a bit is that there doesn't seem to be a convention (aside
> from common sense) for segmenting the module namespace as there is
> with Java (my other primary language).
> Anyway, I'm curious how module namespace collisions/pollution will be
> handled in Haskell over the next 5-10 years. Package hiding works in
> some cases, but it seems like that will fail if you ever need to use
> capabilities from packages that conflict within the same project.
Well, we have a single global namespace for some 30k modules on Hackage.
People are encouraged to partition their packages via top level names,
such as Control.* or System.*
An tree structure that is roughly followed,
However, when this was planned, I don't think we expected to go from 100
modules to 30k modules in 4 years, and there's been little work on
thinking about how to structure the module system at this scale, other
than work on explicit package naming and versioning.
More information about the Haskell-Cafe