Actually, Class::ClassDecorator only runs calls to $foo->super::bar through the AUTOLOAD. Everything else uses either Perl's normal dispatch. And if you use the "decorate" function, you will be using NEXT.pm instead of my hacked up super package. They each have slightly different dispatch semantics, so you can pick the one you like, but either way the vast majority of method calls will use Perl's normal dispatch.