O'Reilly logo

Computer Science & Perl Programming by Jon Orwant

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 44. Debugging and Devel::

Randy J. Ray

Tip

Since the initial publication of this article, the Devel::* group of modules has flourished, now numbering well over 60 modules. However, all of the information in this article remains current.

You might have learned about Perl’s -d switch, which launches Perl’s internal symbolic debugger. If not, read the perldebug documentation and get started; it lets you set breakpoints and step through your programs line-by-line. The debugger is one of Perl’s most attractive tools for developers, in part because it’s not so much a debugger as a debugging system into which you can place the debugger of your choice. The debuggers can be found in the Devel:: category of the CPAN. In this article, I’d like to describe some of the modules you can find there (listed in Table 44-1).

Table 44-1. Some of the Devel:: modules

Module

Purpose

Devel::DProf

Reports the time used by the program and its subroutines.

Devel::Peek

Displays Perl values and structures.

Devel::SmallProf

Profiles individual lines.

Devel::TraceFuncs

Provides call sequences of subroutines.

Devel::Symdump

Provides symbolic dumps for variables and symbol tables.

Devel::WeakRef

Creates weak references to objects.

Devel::DumpStack

Displays the current subroutine’s stack in human-readable format.

Devel::DebugInit

Creates initialization files for C/C++ symbolic debuggers.

Devel::Coverage

Coverage analysis of Perl scripts and libraries.

Devel::CoreStack

Generates a stack trace from a core dump using the best available ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required