> > You Americans and your non-ISO penchant for putting the specific before
   > > the general. Surely that should be:
   > > 
   > >         use Policy::O::Reilly;
   > 
   > I knew someone would argue that, but I didn't think it would
   > be someone as illustrious as Damian.

Illustrious???


   > Do you think Larry doesn't know what he's talking about?

I think Larry's as prone to an occasional misstep as any other desparately
overworked genius.


   > OReilly::Policy is (or might be) still general before
   > specific.  OReilly::* might be a whole family of site-
   > specific modules.  I think that's safer than supposing
   > a universe of Policy::* policy modules.

CPAN's razor: Thou shalt not multiple top-level namespaces without necessity.

If it's an IO mechanism, it goes under IO::
If it's a database driver, it goes under DBD::
If it's a linguistics module, it goes under Lingua::

If it's a policy, it should go under Policy::

Surely you wouldn't condone OReilly::IO::File, OReilly::DBD::TimBase,
OReilly::Lingua::EN::Puns, when they ought to be IO::File::OReilly,
DBD::TimBase::OReilly, and Lingua::EN::Puns::OReilly???

So by all means let's have the "whole family" of site-specific modules".
But put them under something like a Local::O'Reilly (Local::VALinux,
Local::ActiveState, Local::Microsoft, etc.) namespace.

Let's not have a Policy policy that spawns 50,000 new top-level packages.

Damian

Reply via email to