Libraries and hierarchies

Simon Marlow
Mon, 11 Aug 2003 11:24:39 +0100

Alastair Reid writes:
> Note that URIs make pretty good unique package names.  When=20
> used this way, URIs can take several forms:
> 1) The URI can be a pointer to an actual file to be downloaded like=20
> This is a good choice because it often exists for publicly=20
> released software=20
> and following the pointer produces something useful.  The=20
> pointer usually=20
> contains a version number and so will be unique.
> 2) The URI is of the form=20
> http://organization/local-package-name/version and=20
> does not point to an actual file you can download.
> The organization is the URI to some group that is handing out=20
> locally unique=20
> package names.  Some example organizations might be:
>    <- an independent organization from ~simonpj

Ok, but as I mentioned before we'd like to keep package names as short
as possible, for two reasons: they will be included in symbol names in a
compiled library, and because it's just easier to talk about "hgl-1.0"
than it is to talk about "".

So let me suggest a compromise.  I suspect that using as the
main organisation which hands out package names will be fine for a long
time to come, so lets use the convention that

  If the package name is not an absolute URI, then it is taken to be
  relative to

This doesn't conflict with your scheme, but lets us get away with short
package names for most purposes.