#!/usr/bin/perl use warnings; use strict; use feature qw{ say }; use Data::Dumper; local $Data::Dumper::Deparse = 1; sub secret { 'Just Another Perl Hacker,' } for my $symbol (keys %main::) { my $def = do { no strict; Dumper(${'main::'}{$symbol}) }; say "$symbol => $def" if $def =~ /sub/; } #### #!/usr/bin/perl use warnings; use strict; use feature qw{ say }; use Data::Dumper; local $Data::Dumper::Deparse = 1; sub secret { 'Just Another Perl Hacker,' } for my $symbol (keys %main::) { my $def = do { no strict; *{"main::$symbol"}{CODE} }; say "$symbol => ", Dumper $def if $def; }