[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]

use base peculiarities



Why does base.pm not use %ISA to decide whether to require?  Why
does it use the package's $VERSION variable instead?  This seems
to lead to its seting that variable to the bizarre "-1, set by
base.pm", which isn't even "0 but true" (why isn't it?).  Seems to 
me that merely abiding by %ISA would be much clearer.  

The archives have some messages about this from Sarathy, Andreas, 
Kurt, and Tim.  For example:

http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/1999-05/msg00811.html
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/1999-03/msg01050.html

Another issue beyond the peculiar disregard for %INC is that base.pm
conflates the notion of "base package" with physical files in its
cavalier assumption that every base package must be in its own file.
For example, this doesn't allow for the fact that one file may
simultaneously define symbols in multiple package namespaces, as
we see in Tie/Hash.pm, or as was whilom seen in IO/Socket.pm
defining IO::Socket::{INET,UNIX}.

Opinions?

--tom


Follow-Ups from:
andreas.koenig@anima.de (Andreas J. Koenig)

[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]