in reply to A function to check if subroutine exists?

There's not a built-in function, but it's trivial to write one. Just use the symbol table:
#!/usr/bin/perl -w use strict; package Parent; sub new { bless({}, $_[0]); } package Child; @Child::ISA = qw( Parent ); sub child_only {} package main; print "new exists in Child\n" if in_kid('Child', 'new'); print "new exists in Parent\n" if in_kid('Parent', 'new'); print "child_only exists in Child\n" if in_kid('Child', 'child_only'); print "child_only exists in Parent\n" if in_kid('child_only', 'new'); sub in_kid { my $class = shift; my $sub = shift; no strict 'refs'; return defined &{$class . '::' . $sub}; }