Slash and Burn

or

Why the Gale Category Separator Should Be the Slash and Not the Dot

Background

There has of late been dissention within the ranks of the loyal Gale populace - a faction of troublemakers has formed and mounted a jihad against the faithful. These troublemakers insist that gale adopt the lowly dot as the separator between the components of gale categories ('pub.jihad.death-to-slashes') rather than the traditional mighty slash ('pub/freedom-fight/death-to-dots'). For an example of the heretics' rhetoric, see John The Reese's Delimiter Manifesto.

Cognitive Dissonance

Much of the argument for dots involves avoiding metaphor skew. The argument is that the structure and usage of gale categories is more similar to that of conventional names which use dots than to conventional names which use slashes. I disagree. Let's examine the common cases:
Usenet
Usenet newsgroups use a dotted convention in which dots seperate words, but there is no leading dot. This jives well with Gale. However, newsgroups are not a true hierarchy - they are a flat namespace. Thus, if I subscribe to 'rec.motorcycles' I do not see articles posted to 'rec.motorcycles.harley' (thankfully). By contrast Gale categories are a true hierarchy - subscribing to 'pub/motorcycles' will get me messages to 'pub/motorcycles/ysr'.
Thus Usenet's name convention is a close but not exact analog to Gale's name convention.
Zephyr
At Caltech, people using Zephyr tended to use hierarchical instances seperated by dots (e.g. 'ugcs.announce'), but as above this was a flat hierarchy. Most other institutions using Zephyr do not use dot-seperated instances. MIT effectively uses a two-level hierarchy: class provides the top level, and instance denotes the more specific subject (exact usage subject to the conventions of the particular category).
DNS
Internet hostnames are a series of components seperated by dots, but in reverse order from gale - the most general component comes last, rather than first. Because most internet newbies see a lot more hostnames than Usenet newsgroup names, this may be confusing. It also presents a problem because one may want to embed hostnames in categories.
Filesystems
Filesystems tend to use slashes (either forward or backward) as component separators in pathnames. A filesystem is a true hierarchy: entering /usr gets you access to /usr/bin, /usr/lib, etc. Paths have some differences from Gale categories. Paths must begin with a leading slash, or else they are considered relative to a working directory; Gale categories have no analog. The root of a filesystem is '/'; the root of Gale is ''. Also paths refer to either directories, which contain other paths, or files, which contain data. Gale categories can contain data (puffs) or subcategories.
Paths are a close but not exact analog to Gale categories.
In my opinion, the above favor neither slashes nor dots. Dots do not map well to DNS, the case with which most net newcomers will be familiar. They map decently to Usenet. Slashes map well to filesystems, with a few exceptions, about which newbies occasionally become confused. I think a cogent discussion of how Gale categories differ from paths in the documentation would effectively clear up newbie confusion.

Typographical

A slash is a relatively heavyweight character with directionality. The weight of the character seperates words more clearly than a dot. For example, compare 'pub/market/pork-bellies' to 'pub.market.pork-bellies'. The slash slants to the right, implying that the roles of the components on either side of the slash are not symmetric - one dominates the other. One also thinks of division; pub/comp/lang/dylan makes one think
pub
comp
lang
dylan
which clearly denotes 'pub' as most general and 'dylan' as most specific.

It is important that the category component seperator be easy to distinguish from the seperator used between categories in subscription lists - otherwise subscription lists are very difficult to read. Gale uses ':' to seperate categories in subscription lists, and rightly so - the character has a long tradition of being used to seperate elements of similar lists (Unix PATH is the primary example). A dot is not easy to distinguish from a colon. A slash is quite easy.

I could argue further, but I'm sick of this whole mess. Bleah.