[Haskell-cafe] What's in a name?
robgreayer at yahoo.com
Fri Aug 15 22:18:39 EDT 2008
--- On Sat, 8/16/08, wren ng thornton <wren at freegeek.org> wrote:
> Personally, I have major qualms with the Java package
> naming scheme. In
> particular, using domain names sets the barrier to entry
> much too high
> for casual developers (e.g. most of the Haskell user base).
> Yes, DNs are
> cheap and plentiful, but this basically requires a lifetime
> lease of the
> DN in question and the migration path is covered in
> brambles. The
> alternative is simply to lie and make up a DN, in which
> case this
> degenerates into the exact same resource quandary as doing
> nothing (but
> with high overhead in guilt or registration paperwork).
This does sound in theory like a real problem; the actual practice has worked out much differently for Java: the existence of durable domains willing to host development of small libraries for the Java space are plentiful. In other words, the barrier to entry has turned out to be quite low.
Nevertheless, hackage of course provides an even cheaper alternative to DN-based naming, since package names registered on hackage are guaranteed unique (across the hackage-using community). The ubiquitous convention for Haskell could easily be that if you want your library to interoperate without conflict, register it on hackage (otherwise you take your chances, just as in Java if you ignore the DN-based convention). Having the ability to use package names to avoid module-name conflicts (i.e. an agile packaging system, in your words) would still be needed.
The need to *recompile* to avoid conflicts is a problem though, if haskell aspires to attract commercial package vendors. I don't know how it could be avoided though.
More information about the Haskell-Cafe