http://qs321.pair.com?node_id=1218239


in reply to object oriented Perl advice / constructor creation in child class

If you want a module C to give you access to methods of objects A, B, and D, all under one roof – which seems strange to me – then your object C would instantiate instances of A, B, and D as private properties, then expose methods (of C) which under-the-hood "reflected" those calls to the various objects that it is stashing. Callers would not perceive this: they would only call methods of C, not knowing exactly how they are implemented. But this seems to contradict the "DRY" principle, since in every method of C you would be "repeating yourself."