"Conal Elliott" <conal@conal.net> writes:
I'd prefer more discussion about when to make new root names, when to wedge things into the existing hierarchy, and when to create new root names, under which to add projects ( e.g. DSEL).
I belive the primary - and perhaps only justifiable - purpose of the hierarchy is to avoid namespace collisions. A new root is a good choice when you have a library that has a distinct name (like "ForSyDe", or, for that matter "Parsec"), and includes cross-hierarchy functionality.
I have doubts about whether module hierarchy is workable in general. Maybe we could come up with something better.
Here's an essay about categorizing stuff: http://www.shirky.com/writings/ontology_overrated.html The short version is that any hierarchy is going to have problems, and nobody (except in the physical world) is browsing a hierarchy anyway, they just enter terms in search fields. So a wide/shallow hierarchy incurs no additional cost, and reduces at least some of the problems compared to a narrow/deep one. -k -- If I haven't seen further, it is by standing in the footprints of giants