If Perl programs (executables, whatever you call them) are called "modules", why is the main place people download them from called CPAN?
It's completely illogical.
C = Comprehensive (It's not, it definitely does not contain all possible modules)
P = Perl (This is only one that makes sense)
A = Archive (If the things people create are called modules - .pm files, really - what makes this an archive? A collection of things? That's a weak leg to stand on. Yes, distributions formalizes this, but modules seems to be the common nomenclature.
N = Network (How is this a network? I think Wall - or later, Hietaniemi - just wanted people to think it was big and important in the early days)
This is all absurd and slightly sarcastic, but I finally got to write it down somewhere :)
CPAN was named after (in imitation of) CTAN, the Comprehensive TeX Archive Network. CTAN was named by George Greenwade — the idea was to bring together (network) various TeX archives that various people had collected. See:
There are multiple CPAN sites, which rsync from each other in a hierarchical way, so "network" is quite appropriate. And they retain all previous versions, so they're an archive. Also, the intention was for it to contain all published modules, and it has indeed grown to be, I think, the largest repository of modules for any language. Comprehensive does not mean complete.
The archive is the collection of archive files which contains a combination of software libraries, documentation, programs, tests, and metadata. It also includes manifests, checksums and other data useful for the CPAN program.
The network is a collection of 250+ mirrors of the archives.
Ok, I'll grant you "all" is in the defintion, but so is "nearly all". Comprehensive is often used with a modifier to denote that it doesn't cover all possibilities. It also is applied to subjects that can't include all possibilities, or where they can't reasonably be known. Its root word compréhensif also hints at the subject covering many areas, but not all of them; a thorough understanding.
CPAN covers nearly all Perl libraries, and also covers nearly all categories of modules, as they are organized into a hierarchy based on topic, and the modules' naming naturally falls into a hierarchy as well. It's easy to find a module even without a search engine, and thus easy to find out whether you need to make one or whether one already exists. The result is a comprehensive archive of libraries.
If Perl programs (executables, whatever you call them) are called "modules", why is the main place people download them from called CPAN?
It's completely illogical.
C = Comprehensive (It's not, it definitely does not contain all possible modules)
P = Perl (This is only one that makes sense)
A = Archive (If the things people create are called modules - .pm files, really - what makes this an archive? A collection of things? That's a weak leg to stand on. Yes, distributions formalizes this, but modules seems to be the common nomenclature.
N = Network (How is this a network? I think Wall - or later, Hietaniemi - just wanted people to think it was big and important in the early days)
This is all absurd and slightly sarcastic, but I finally got to write it down somewhere :)