Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: Re^2: helping along $_

by belg4mit (Prior)
on Sep 09, 2002 at 13:45 UTC ( [id://196263]=note: print w/replies, xml ) Need Help??


in reply to Re^2: helping along $_
in thread helping along $_

changing 1; to $_=1; in a module is not going to do anything significant, unless $_ is not scoped to the module and something else using the module expects $_ to be undefined initially. Your other example is not a useless use of constant in void context, I'm not sure it's even in void context, but I'll take your word for that. It's not useless because it's part of a larger, more meaningful statement, if the remainder of the line consisted of only numeric operations, numbers, (variables) and semi-colon, that would be useless use... and safe to muck with.

--
perl -pew "s/\b;([mnst])/'$1/g"

Replies are listed 'Best First'.
Re^4: helping along $_
by Aristotle (Chancellor) on Sep 09, 2002 at 16:27 UTC
    Actually, 0 and 1 are special-cased in perl to not throw a warning. Consider:
    $ perl -w -e'1;' -e'10;' Useless use of a constant in void context at -e line 2

    Makeshifts last the longest.

      Yes, okay. But that doesn't really affect how this hypothetical behavior for ARGHelper would be, does it? It simply means that defining what constitutes assignment with the same parameters as what incurs the warning is slightly too restrictive (as it leaves out 0 and 1), but the idea is still there and otherwise valid. I don't think you've made your case as to how this could negatively affect things; I already pointed out the bit about scope. An assignment returns its value, so the statement still evaluates to 0 or 1, whether or not an assignment is taking place.
      % echo '$_=0;' >! /tmp/a.pm ; perl -Mlib=/tmp -Ma a.pm did not return a true value. BEGIN failed--compilation aborted.

      --
      perl -pew "s/\b;([mnst])/'$1/g"

        I didn't have a case to make, just a gut feeling that this has potential break something in an obscure way. The things I mentioned were what came to mind at the moment.

        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://196263]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (3)
As of 2024-04-26 06:16 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found