Unique library names

Programmers should choose names for distributed libraries whose names are chosen not to collide with other libraries’ names. This appendix suggests a convention for generating unique library names, similar to the convention for Java [1].

A unique library name can be formed by associating the library with an Internet domain name, such as mit.edu. The lower-case components of the domain are reversed to form a prefix for the library name. Adding further name components to establish a hierarchy may be advisable, depending on the size of the organization associated with the domain name, the number of libraries to be distributed from it, and other organizational properties or conventions associated with the library.

Programmers should use library names that are suitable for use as part of file names. Special characters in domain names that do not fit conventions of commonly used file systems should be replaced by hyphens or suitable “escape sequences” that, as much as possible, are suitable for avoiding collisions. Here are some examples for possible library names according to this convention:

(edu mit swiss cheese)
(de deinprogramm educational graphics turtle)
(com pan-am booking passenger)

The name of a library does not necessarily indicate an Internet address where the package is distributed.