use B::Deparse; my $d = B::Deparse->new; # anonymous sub my $coderef = sub { print "howdy!" }; # assuming herveus ;) my $code = $d->coderef2text($coderef); # named sub, e.g. coderef2text from B::Deparse $code = $d->coderef2text(\&B::Deparse::coderef2text);