Eclipse‖ is an open source development environment that runs on a variety of platforms. It’s a Java application, but don’t let that scare you off. It has a modular design so people can extend it to meet their needs. EPIC# is the Perl plug-in for Eclipse.
Eclipse is not just a debugger though, and that’s probably not even its most interesting features. From the source code of my Perl program I can inspect classes, call up parts of the Perl documentation, and do quite a bit more.
Figure 4-5. ActiveState's Komodo is a complete development environment and even comes with a tutorial on its use
Affrus
Affrus is a Perl-only debugger from Late Night Software* for Mac OS X. Since I work almost exclusively on Mac, I really appreciate a debugger that’s quite Mac-like. Late Night Software started with Script Debugger for AppleScript, so they’re tuned into Macs. Besides that, Affrus has the usual debugging features.
One of the features I find especially useful is Affrus’s Arguments pane. I can add invocations of my program, and then select which one I want to run. In Figure 4-6, I’ve added two different command lines and selected the first one, which has the solid diamond next to it. When I run the program, @ARGV gets the elements 5 and 6. If I save this as an Affrus file, the next time I open the program with Affrus I still have access to those command lines.
Figure 4-6. Affrus allows me to configure several different command lines to use with my program; it updates expressions as my program runs
Like other debuggers, Affrus has a window where I can track the values of expressions. Affrus uses a separate window to display those. I can also look in the Debugging pane to see a list of all of the variables at any time (Figure 4-7).