> I was thinking of verb-subject, or verb_subject, or viceversa. If you are writing a family of related programs, then the word that they have in common should be first. For example, in OpenBSD there are
mount_cd9660 mount_ffs mount_msdos and so on. The fact that these programs perform related operations is immediately apparent, and it is easy to find all of the related programs simply by typing mount_ followed by TAB on the command-line. Note that the word that is common could be a verb or a subject. Although it is a verb in the case of "mount", it is a subject in the case of "pkg": pkg_add pkg_create pkg_delete pkg_merge > no separator between subject and verb. Historically, "no separator" seems to win. The best example is the World Wide Web. When it started in the 1990's, there were a plethora of hyphen-separated URLs, but over time they have disappeared and been replaced with no separator. Mathematicians (who have dealt with this issue for centuries) also prefer no separator: "sinh" for "sine hyperbolic", "ln" for "logarithm natural", "arcsin" for "arc sine", and "arcsinh" for "arc sine hyperbolic". The oldest and most-used Unix commands also follow this convention: "lpq", "lpr", "lprm", "whereis", "mkdir", and so on.

