Just a suggestion:
This module is simply essential. Thanks a lot for your work.
It will be nice to have a more OOP oriented Data::Dumper
so that if the object being dumped is "opaque" (C, XS, etc.)
but has a C<Dumper> method, such method will be called instead. The idea
being that anyone developing some sort of external XS class/object will
collaboratively define a C<Dumper> method specifying how the object will
be dumped. To keep compatibility with the current version of
Data::Dumper a variable $Data::Dumper::Delegate or s.t like that can be
instroduced.