[LON-CAPA-dev] A lesson in globals
Guy Albertelli II
lon-capa-dev@mail.lon-capa.org
Fri, 21 Mar 2003 19:30:57 -0500 (EST)
Hi Gerd,
> That's all true, but what if you want the following:
>
> * variable (like a tied hash) should NOT be available from outside the
> package
> * inside the package, you want to refer to it just by its name
>
> Looks like "my $silly" as a package global works great for that.
No it doesn't.
> > ----- start test.pl -----
> > package globaltest;
> > use strict;
> > my $silly='a';
> > print '1'.$silly."\n";
> > print '2'.$globaltest::silly."\n";
> >
> > package notglobaltest;
> > print '3'.$silly."\n";
> > print '4'.$globaltest::silly."\n";
> > ----- end test.pl -----
$silly is available in both pacakages.
But it's scope is limited to this file.
--
guy@albertelli.com LON-CAPA Developer 0-7-7-1-