I had been using Carp::Cluck instead of print as a way to debug stuff. The traceback information can be very useful. However, it was a pain to have to either go back and remove everything or comment it out or add ...if $::DEBUG; after every line.

Then it struck me that I could just add the conditional to Cluck in Carp module, but that could interfere with existing code so I decided to add a new function.

I chose the name Clue as it's purpose is to give me a clue when debugging and follows the apparent convention of the module of starting with C.

It only requires 2 changes. One modification and one additional line. I've attempted to inticate these in the style of diff, but don't be surprised if I didn't get it right.

To use:

use Carp 'clue'; $::DEBUG = 1; # to enable Clueing. ... clue 'scalar';

I add the following line to my programs:

use vars qw/$DEBUG/;

so that I can just add -s -DEBUG to the program invokation to turn it on. Simple but useful.

73:-+ @EXPORT_OK = qw(cluck verbose clue); 123 + sub clue { warn longmess @_ if $::DEBUG; }

In reply to Get Clue'd up. by BrowserUk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.