Class/DispatchToAll version 0.01 ================================ See the Docs of Damian Conways Module Class::Delegation for a good introduction about Dispatching vs. Inheritance Class::DispatchToAll enables you to call B instantances of a method in your inheritance tree (or labyrinth..). The standard Perl behaviour is to call only the lefternmost instance it can fing doing a depth first traversial. Imagine the following class structure: C / A B C::C \ / \ / A::A D \ / My::Class Perl will try to find a method in this mess in this order: My::Class -> A::A -> A -> B -> D -> B -> C::C -> C (Note that it will look twice in C because C is a parent of both C and C)) As soon as Perl finds the method somewhere, it will short-circuit out of it's search and invoke the method. And that is exactly the behaviour C changes. If you use C (provided by C) to call your method, Perl will look in all of the aforementioned packages and run all the methods it can find. It will even collect all the return values and return them to you as an array, if you want it too. INSTALLATION To install this module type the following: perl Build.PL ./Build ./Build test sudo ./Build install AUTHOR Thomas Klausner, domm@cpan.org COPYRIGHT AND LICENCE Class::DispatchToAll is Copyright (c) 2002,2006 Thomas Klausner. All rights reserved. You may use and distribute this module according to the same terms that Perl is distributed under