YAPC::NA 2004 The Perl Debugger #23

Bonus: Customization

  • debugger is simply a library that takes advantage of hooks in Perl interpreter

    • replace the debugger completely, if you like.

                cp /usr/lib/perl5/5.6.1/perl5db.pl ~/myperl5db.pl
                BEGIN { require "~/myperl5db.pl" }
  • or use alternative debuggers from the command-line

    • DProf is included with perl5.6 - a profiler which uses debugger hooks.

      perl -d:DProf mycode.pl

  • or use debugger hooks in your own programs

    $DB::single = 1; # set a breakpoint in your code

  • see perldoc perldebug for more about hooks

    • internal debugger configuration options

  • set debugger options with O - only one useful example of this I know of:

    O pager=|more

    • debugger configuration file: .perldb

      • include perl code to run when debugger starts.

      • such as modifying DB package variables:

        $DB::alias{'stop'} = 's/stop (at|in}/b/';

<< Previous | Index | Next >> Copyright © 2004 Daniel Allen