Sandy has asked for the wisdom of the Perl Monks concerning the following question:

Good morning (afternoon? night?) to all

Due to the fact that my co-workers will soon be required to work with Perl, and none of them have worked without a GUI debugger for years (and are reluctant to work without one now), it has been decided to buy a GUI debugger/IDE.

I looked at the ads for ActiveState's Komodo and Visual .NET plug-in. They seem ok to me.

But... I was wondering... what are your favourite GUI debuggers/IDEs?

UPDATE Sorry, I i put this post in meditations, not 'seekers of perl wisdom'. Need more caffeine. UPDATE update to my update -> I thought, I put...

Replies are listed 'Best First'.
Re: Favourite GUI Debuggers
by jdtoronto (Prior) on Dec 12, 2003 at 14:55 UTC
    Komodo is great, in fact really good despite being commercial!

    Generally I use Eclipse with EPIC Perl editor plug-in, largely because I am not a GUI dependant user and it suits my style of working.


      Not that it makes any difference to the answer, but isn't Komodo fairly expensive? I have heard it is about $300 a seat. (Well, that seems expensive to me, anyway.)



      Perl has one Great Advantage and one Great Disadvantage:

      It is very easy to write a complex and powerful program in three lines of code.


      The Needs of the World and my Talents run parallel to infinity.
        I'm the only one around here (work) who shops for opensource software (sometimes unsuccessfully). Everyone else wants the latest and greatest MS products. Comparatively speaking, <$300 is cheap.

        Me... I still use 'print' statements in my code for debugging purposes. I know it's old, and please don't tell me that i'm nuts for doing it, it's an old dog, new tricks issue.

Re: Favourite GUI Debuggers
by Abigail-II (Bishop) on Dec 12, 2003 at 15:37 UTC
    what are your favourite GUI debuggers/IDEs?
    vi in an xterm.


      Amen, amen, amen, ++. Nevertheless, vim for me!


Re: Favourite GUI Debuggers
by Anonymous Monk on Dec 12, 2003 at 16:14 UTC
Re: Favourite GUI Debuggers
by bluto (Curate) on Dec 12, 2003 at 16:34 UTC
    As far as debuggers go, I used them extensively for a number of years when I was working on multi-threaded C code, but I haven't touched them since I moved to Perl. This is probably due to the quicker turnaround time of making changes in perl (e.g. to insert a debugging print statement, or a Data::Dumper of a structure) and the fact that perl doesn't tend to have really pernicious low-level problems like C (e.g. core dumps, memory leaks, etc). Debuggers are nice when you have exausted other paths and you have time to burn. For me, it's not worth the effort to pick a good GUI for this.

    As far as IDE's, I use emacs. If you pick something that is relatively generic that has syntax highlighting and some intellegent editing (e.g. vim), you won't have to learn a new environment when the next new language you are required to use comes down the pike, though Perl is a welcome relief...


      Amen brother. For interpreted languages like perl, there is no need for a debugger (if you need one, you should really go back and learn the basics of the language).
        Even though perl allows you to enter print statements quickly, there are plenty of situations where a debugger will help. One example is

        Say after a long processing (e.g. after reading 1000 lines), you notice that something is wrong (e.g. a variable has invalid data).

        Wouldn't it be nice if I can stop at that point and inspect all the variables? I do not need a GUI debugger, but I find debuggers to be very useful (-d option in perl).

        If debuggers allow conditional break points, you can even break after reading every 10 lines (or when a variable has value X).

Re: Favourite GUI Debuggers
by Anonymous Monk on Dec 12, 2003 at 16:27 UTC
Re: Favourite GUI Debuggers
by talexb (Canon) on Dec 12, 2003 at 16:28 UTC

    Let me throw Log::Log4perl into the mix -- a very flexible logging system whose depth of detail you can adjust up and down without having to go into the code at all. No, it's not a GUI, but it is a very powerful development and debugging tool.

    --t. alex
    Life is short: get busy!
      I concur wholeheartedly. It doesn't matter what kind of language you're developing in, a good logging system is invaluable.
Re: Favourite GUI Debuggers
by Jonathan (Curate) on Dec 12, 2003 at 16:58 UTC
    I had the boss buy us Komodo and it is good, it's also very cheap when compared to JBuilder. The regex utility is good but to be honest I only rarely use any of it.
    I guess I'm a luddite and will always prefer telnet, vi and print statements.
      I guess I'm a luddite and will always prefer telnet, vi and print statements.

      I used to call myself a Luddite for having the same preferences. I realize now that that's not the case. I just have a finely honed sense for knowing what tools are effective and efficient. :-)

      Case in point: I did switch to ssh. Even if you ignore the security aspects of it, ssh is a much more powerful tool. And, of course, there's no good reason to ignore security.

      "My two cents aren't worth a dime.";
Re: Favourite GUI Debuggers
by exussum0 (Vicar) on Dec 12, 2003 at 16:56 UTC
    I like eclipse. Yes, I know, it's a java IDE, but it does what it needs to quite well. You have package name completion and other helpful little things. It helps refactor your code and what not.

    Hey, you said IDE"s, not which ones.

    As for perl, I like perl -d. If you are comfy with gdb, -d will work quite well. It brings in a perl lib for debugging, I can't remember the name atm. (Free XP for the guy who first mentions it ;) ).

    If you want graphical, try ddd. It's nifty to say the least. ddd

    Play that funky music white boy..
Re: Favourite GUI Debuggers
by Courage (Parson) on Dec 12, 2003 at 16:10 UTC
    ptkdb is debugger that fulfills all my debugging needs. Highly recommended. Able to save/restore states, stop on any condition and all that...

    Courage, the Cowardly Dog

Re: Favourite GUI Debuggers
by calin (Deacon) on Dec 12, 2003 at 17:49 UTC
    GUD (Grand Unified Debugger) from Emacs. It is as free as a GNU/bird ;-)
Re: Favourite GUI Debuggers
by TomDLux (Vicar) on Dec 12, 2003 at 17:53 UTC

    My favourite IDE is Unix, nowadays I settle for Linux.

    I use emacs for my editor, for editing I use the perldb command within emacs.


      That's also my favourite combination. But when you're really lost in complex datastructures (and like pretty pictures), the Data Display Debugger is a very nice environment, which interfaces to a lot of languages.


Re: Favourite GUI Debuggers
by rkg (Hermit) on Dec 13, 2003 at 02:19 UTC
    For Win boxen, I'm now a solid fan of optiperl.

    At first I was dubious, as the default colors and lines and dashes everywhere turned me off, but it is quite a nice IDE.

    You can customize just about everything in it; it offers a regex debugger; perl tidy built in; a web server built in; secure publish to remote server; pod extraction; etc. Stable -- no crashes on me yet -- and low-cost.

    your mileage may vary...


      I second OptiPerl. It was particularly useful introducing it to a development team that had no Perl or UNIX experience. The IDE got them up to speed, and they could debug their UNIX scripts remotely from their PCs. I'm sure that Komodo offers this too, but it's expensive, and I found it slowwwww when I was evaluating it.
Re: Favourite GUI Debuggers
by CountZero (Bishop) on Dec 12, 2003 at 23:13 UTC
    Definitely KOMODO.

    It does not stop at Perl, but it does HTML also (and can render most of it rather well) and XML (with XSLT transformations if needed!) and lots and lots of other languages.

    It has a regex editor/debugger and a GUI installer for PPM.

    It has a macro facility (which is however not yet fully documented) and you can run shell commands/programs from inside it.

    It does a nice job tidying up your code and colouring it. The debugger is fully integrated and it can also debug on a remote machine (but I have not yet tried that).

    Thre is a mailing list and friendly developpers who quickly answer any queries.


    "If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law