use strict; use warnings; use Data::Dumper; use Devel::Peek; package pz; sub p1 { return 1; } sub p2 { return 2; } package main; print "pz is".Dumper(\%pz::); print "nz is".Dumper(\%nz::); print "before alias\n"; *nz:: = *pz::; print "after alias\n"; print "nz is".Dumper(\%nz::); warn("dumping PZ\n"); Dump(\%pz::); warn("dumping NZ\n"); Dump(\%nz::); #eval "print nz::p1();"; #if($@) { # die $@; #} print nz::p1(); print "after nz::p1() run\n";