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

Re^4: I know what I mean. Why don't you?

by Aristotle (Chancellor)
on Nov 24, 2005 at 01:04 UTC ( [id://511296]=note: print w/replies, xml ) Need Help??


in reply to Re^3: I know what I mean. Why don't you?
in thread I know what I mean. Why don't you?

Judging the use of strict and warnings by the presence of the pragmata alone is stupid. No my in sight in a longer snippet that uses multiple variables is a much better indicator. Global filehandles and two-argument open are additional red flags. Basically, I’ve seen enough bad Perl code that I can tell it by the “smell” I’m not even sure all of the hints I pick up on are conscious.

Though in general, unless the problem is obviously caused by a lack of strictures or would clearly have been pointed out by a warning, I only suggest that the poster may make his life easier by using them. And I’ve downvoted a fair number of nodes where someone just hawks about strictures and warnings when they obviously haven’t even taken the time to read the poster’s problem description and code. (I remember there was a thread recently where half a dozen people worthlessly posted about strict and warnings when the problem had absolutely nothing to do with that. Way to pollute the forum.)

Makeshifts last the longest.

Replies are listed 'Best First'.
Re^5: I know what I mean. Why don't you?
by bigmacbear (Monk) on May 20, 2006 at 00:31 UTC

    Global filehandles and two-argument open are additional red flags.

    True, unless one is writing scripts that must run on older systems which came with perl 5.005_03 and can't be upgraded in a timely manner. There's still a lot of Solaris 8 out in the wild to which this applies.

      You can use Symbol::gensym on such old perls to get lexical filehandles (more awkward, but gets you the same benefits), and you could write a conditionally installed wrapper to emulate three-arg open (only awkward once, but only worthwhile when you can foresee value in making the code easily forward-upgradable). Whether the effort is justified will depend on your particular circumstances, of course (but see also my signature).

      Makeshifts last the longest.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (6)
As of 2024-03-19 08:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found