use Sub::Uplevel; sub MainSub { my $name = (caller 0)[3]; print "My name is $name\n"; } sub sub1 { uplevel 1, \&MainSub }; sub sub2 { uplevel 1, \&MainSub }; sub sub3 { uplevel 1, \&MainSub }; sub1(); sub2(); sub3(); #### My name is main::sub1 My name is main::sub2 My name is main::sub3