On Tue, Sep 19, 2000 at 06:39:49PM -0700, Nathan Wiger wrote:
> > The presence of a method STORE is visible outside of the module, and
> > may be &required* if the module follows some published (non-Perl) API.
> > Variables are of different ilk.
> 
> I think you're overlooking they can both be equally visible:
> 
>    $Foo::DEBUG = 1;
>     Foo::STORE(5);
> 
> depending on how you call them.

As I said, special ALLCAPS variables cannot get in the way here.  Or
did I misunderstand what you wanted to say?

> > So you can have module variables with any names - @ARGV does not get
> > in the way of APIs.
> 
> That's not really true. Try changing @ISA or @EXPORT_OK. Lots of stuff
> changes. And other variables like $_ do get pushed onto you
> involuntarily.

$_ is not ALLCAPS.  @EXPORT_OK should die (see RFC 233).  @ISA is on
its way to its grave already, see C<use base>.

Ilya

Reply via email to