I recently blogged about extending the Perl debugger. Basically, if you use xx $some_var , you get love Data::Dumper output instead of the confusing debugger output:

DB<2> xx $shiny { foo => [ 1, 2, 4 ], guess => sub { my $x = shift @_; return $x + 1; }, this => "that", uno => { this => "that", "what?" => { this => "them" } } }

You can fork it on github and clean up my awful code or install it from the CPAN when it's available.

In other news, if you ever extend the debugger, your code is going to look awful by default because there is just no way to get around that mess of global variables and action at a distance.