poletti@PolettiX:~/sviluppo/perl$ nl mikasue.pl 1 #!/usr/bin/perl 2 use strict; 3 use warnings; 4 { # scope reduction 5 our $MW = "Hello, mikasue!"; 6 print "\$MW is '$MW'\n"; 7 print "Current package is ", __PACKAGE__, "\n"; 8 print "\$main::MW is '$main::MW'\n"; 9 } # end of "our" scope 10 package Whatever; 11 no strict; # note: no strict here! 12 print "\$MW is '$MW'\n"; 13 print "Current package is ", __PACKAGE__, "\n"; 14 print "\$main::MW is '$main::MW'\n"; poletti@PolettiX:~/sviluppo/perl$ perl mikasue.pl Name "Whatever::MW" used only once: possible typo at mikasue.pl line 12. $MW is 'Hello, mikasue!' Current package is main $main::MW is 'Hello, mikasue!' Use of uninitialized value in concatenation (.) or string at mikasue.pl line 12.$MW is '' Current package is Whatever $main::MW is 'Hello, mikasue!'