Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re^4: Scalar Value Not Available To Subroutine

by ikegami (Pope)
on Dec 21, 2012 at 05:41 UTC ( #1009865=note: print w/replies, xml ) Need Help??

in reply to Re^3: Scalar Value Not Available To Subroutine
in thread Scalar Value Not Available To Subroutine

Effectively, the loop variable has no relationship with any pre-existing variable with the same name:

Same goes for local, fyi.

>perl -E"say 0+\$x; local $x; say 0+\$x;" 4885852 2403948

I've often wished (and occasionally argued in favour of), that for didn't localise pre-existing, lexical loop variables.

It would be useful and intuitive. It would drastically change the behaviour of the following, though

for $lex (...) { push @f, sub { ... $lex ... }; }

As it is now, I never use a pre-existing var.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1009865]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (3)
As of 2017-12-16 20:57 GMT
Find Nodes?
    Voting Booth?
    What programming language do you hate the most?

    Results (459 votes). Check out past polls.