Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re^4: Autovivification of scalars in sub calls

by truedfx (Monk)
on Dec 09, 2005 at 11:51 UTC ( #515515=note: print w/replies, xml ) Need Help??

in reply to Re^3: Autovivification of scalars in sub calls
in thread Autovivification of scalars in sub calls

Perhaps also interesting is that lvalues remain lvalues even after passing them to the unary + operator.
sub foo {} #foo(substr "hello", 10, 1); # fatal error as you pointed out #foo(+substr "hello", 10, 1); # I thought this would be a workaro +und foo(scalar substr "hello", 10, 1); # but you need something like this print "This only gets printed if the last line didn't cause a fatal er +ror\n";
And testing to make sure:
perl -e '+$a = "Hello, world!\n"; print $a' Hello, world!
(I know it's documented that + does absolutely nothing, and I guess that does mean it doesn't convert lvalues to rvalues, but it's still somewhat surprising to me.)

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (3)
As of 2019-07-23 05:22 GMT
Find Nodes?
    Voting Booth?
    If you were the first to set foot on the Moon, what would be your epigram?

    Results (24 votes). Check out past polls.