use Carp; use Sub::Name; subname( my_anonymous_sub => sub { sub { carp("subname"); }->() } )->(); sub { local *__ANON__ = 'my_anonymous_sub'; sub { carp("*__ANON__"); }->() }->(); __END__ subname at - line 7 main::__ANON__() called at - line 8 main::my_anonymous_sub() called at - line 10 *__ANON__ at - line 15 main::my_anonymous_sub() called at - line 16 main::my_anonymous_sub() called at - line 17