Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: Re: Debug code out of production systems

by liz (Monsignor)
on Jan 25, 2004 at 00:09 UTC ( #323894=note: print w/ replies, xml ) Need Help??


in reply to Re: Debug code out of production systems
in thread Debug code out of production systems

While it is clear how it does the trick, it is really misleading about what the pragma does.
I have some of that feeling as well. But please note that this pragma is only intended to be called from the commandline (it actually emits a warning when you're trying to use it inside a script). So my thinking was, use "begin" as a pragma to activate certain =begin pod sections.

I would rather have a debug pragma
I've thought about using =debug as a pod delimiter. The thing is that many pod processor generate a lot of noise when they encounter an unknown =pod delimiter. Wherease if they don't know how to handle =begin, they're supposed to ignore it.

...a quick search and replace in your module shows that it can be done...
Indeed. That shouldn't be the problem. But causing headaches for maintainers of pod parsers may be a problem.

...as a pragma with two parameters, one for the tag and one for the label to activate.
I think that would make it more confusing and obfuscating. I think the namespace idea that I head, may be more handy.

... the code after the POD block disappears.
That's because:

print "before\n"; =pod Whatever I want to include here. Comments or code, it doesn't matter. =begin DEBUGGING print "inside\n"; =cut print "after\n";
becomes after conversion:
print "before\n"; =pod Whatever I want to include here. Comments or code, it doesn't matter. { print "inside\n"; } print "after\n";
which makes clear why the code disappears. I could check for that at the expense at a more complex filter. Or add another CAVEAT. Probably the first.

Thanks for the feedback.

Liz


Comment on Re: Re: Debug code out of production systems
Select or Download Code
Re: Re: Re: Debug code out of production systems
by shotgunefx (Parson) on Jan 25, 2004 at 19:41 UTC
    "I've thought about using =debug as a pod delimiter. The thing is that many pod processor generate a lot of noise when they encounter an unknown =pod delimiter. Wherease if they don't know how to handle =begin, they're supposed to ignore it. "

    Couldn't you use the =for directive =for debug? That does not emit warnings.


    -Lee
    "To be civilized is to deny one's nature."

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://323894]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (15)
As of 2014-07-31 12:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (248 votes), past polls