in reply to Re^2: Using $_ as a temp var, especially in functions
in thread Using $_ as a temp var, especially in functions
second snippet isn't aliasing anything
Good point. It would have to be
$_= 'value before localising'; my $thingToAlias = 'the quick brown fox'; { local *_= \$thingToAlias; s/brown//; } print $thingToAlias; print $_;
Giving
C:\test>test the quick fox value before localising C:\test>
A silly example would be s/nit// for $style;
I can't see any advantage in this over $style =~ s/nit//;?
I appreciate this was just a trivial example, but I can't see where this would be useful as a statement modifier? (No doubt you have a great example up your sleeve:^)
For temporary variables, which was what this thread really was about, I use local. Not only does a for block not do what I want anyway (except (close your eyes) in the perverted for(my $temp) { ... } form (now open them again)) because it aliases a variable rather than give me a fresh, empty one, but it also adds another indentation level, which in my stylistic preference is to be avoided at all cost.for and local are really orthogonal to each other. Neither can do what the other does, and so debating which one is preferred is moot.
Agreed. They are unrelated, but I was responding to Re: Using $_ as a temp var, especially in functions in the second part of my post rather than the OP.
I first saw the 1-time for when you showed it to me in a thread about a week ago (which I can't now find?) but I was uncomfortable with the idiom of using a loop for a straight through peice of code. I'm similarly troubled by the use of redo in a bare block or if statement, prefering to see a loop construct where things are going to loop.
I did spend a while after you first showed me the 1-time for looking for a suitable alternative. And came up with the local *_ = \$variable; (Which in turn was stolen from the Cheap idioms thread.), but promptly forgot the detail as I haven't had a need to use it yet. That's also why I was interested in the arguments against it.
Who knows, maybe in time I'll get used to these idioms as I have others and go with the flow (sic), but as I said, my devlopment of a personal style, and my investigations of what's possible in perl is ongoing.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Using $_ as a temp var, especially in functions
by Aristotle (Chancellor) on Oct 24, 2002 at 12:38 UTC | |
by rir (Vicar) on Oct 24, 2002 at 13:23 UTC | |
by Aristotle (Chancellor) on Oct 24, 2002 at 13:47 UTC | |
by rir (Vicar) on Oct 24, 2002 at 20:47 UTC | |
by Aristotle (Chancellor) on Oct 24, 2002 at 21:57 UTC |