>perl -wMstrict -le "package Foo; print 'in package Foo'; sub my_name { return (caller 0)[3] } print my_name(); package main; print 'in package main'; print Foo::my_name(); sub my_name { return (caller 0)[3] } print my_name(); package Foo; print 'in package Foo'; print main::my_name(); print my_name(); " in package Foo Foo::my_name in package main Foo::my_name main::my_name in package Foo main::my_name Foo::my_name