Hallo,
in dem nachfolgenden Beispiel hätte ich gedacht, dass der letzte print das Ergebnis main:main liefert, nämlich den Wert der in main definiert ist. Stattdessen liefert er den Wert aus dem package p2.
#!/usr/bin/perl -w
use strict;
print "Content-type: text/html\n\n";
my $var1 = "main";
print "main:$var1<br>";
package p1;
my $var1 = "p1";
print "p1:$var1<br>";
package p2;
my $var1 = "p2";
print "p2:$var1<br>";
package main;
print "main:$var1<br>";