2008/7/8 Greg Aiken <[EMAIL PROTECTED]>: > can anyone please explain why when I am in the subroutine, > and I attempt to print a variable that's been declared and assigned a value > in the main package - why I am unable to print the value of the main > package's variable (despite that I am using the fully qualified variable > name)?
Just to add to the discussion, because I didn't understand this behaviour either, on the basis of http://perl.plover.com/FAQs/Namespaces.html I made a test script which might be useful for someone: #! perl use strict; use warnings; my $var = "value"; $main::var = "ninny-poo"; print "1: $var\n"; print "2: $::var\n"; print "3: $main::var\n"; our $var2 = "value-mungus"; print "1: $var2\n"; print "2: $::var2\n"; print "3: $main::var2\n"; $main::var2 = "ninny-poo"; print "1: $var2\n"; print "2: $::var2\n"; print "3: $main::var2\n"; &subroutine; sub subroutine { $main::var = "boo"; print "1: $var\n"; print "2: $::var\n"; print "3: $main::var\n"; $var2 = 'rottenapples'; $main::var2 = "boo"; print "1: $var2\n"; print "2: $::var2\n"; print "3: $main::var2\n"; } _______________________________________________ Perl-Win32-Users mailing list [email protected] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
