package Foo; sub subroutine { 'Package "' . __PACKAGE__ . '"' } $variable = "is still there.\n"; package main; undef %Foo::; print join ' ', Foo::subroutine, $Foo::variable;