It seems like you could write one AUTOLOAD method in your base class that calls Scalar::Util::blessed() on the object to get the class, and compares that against the method name. Which should work if the method and class names are as similar as the ones in your example, and you only have sibling classes (not parent/child, other than the base class).