I finally sat down and wrote this, and it works. The only trick is that authors of module intended to be "mixin subclasses" of DateTime.pm need to call "super::foo" instead of "SUPER::foo", because I had to implement my own dispatch.
The alternative would have been much funkier code that broke the ->can and ->isa methods. With my code, ->can and ->isa always work correctly. Except for calls to super::foo, there should be very little overhead for this code, because it uses Perl's native dispatch mechanism for everything else. I'll upload it to CPAN once I have a good name for it. This is currently being discussed on [EMAIL PROTECTED], so feel free to put your $.02 in there. -dave /*======================= House Absolute Consulting www.houseabsolute.com =======================*/