in reply to Re^4: $1 not "freezing" in an addition
in thread $1 not "freezing" in an addition
lvalue context has nothing to do with scalar/void/list context.
lvalue and lvalue context are not the same thing.
An lvalue context is a context where an expression must produce an lvalue. In contrast, an rvalue context is a context where code may produce an rvalue.
Example of lvalue contexts:
- Sub arguments.
- The arguments to some functions.
- The operand of the reference operator.
- The LHS operand of assignment operators.
- foreach's list.
When using $1,$2... in an expression ( anything you can legally say in a spot where a value is required ) you should quote to stringify and preserve the current value.
No, it's stupid to do $x = "$1";.
...though I admit the lvalue context is not sufficient (e.g. $bar = "$1" + foo();).
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^6: $1 not "freezing" in an addition
by Anonymous Monk on Dec 17, 2012 at 13:42 UTC | |
by ikegami (Patriarch) on Dec 19, 2012 at 12:48 UTC |
In Section
Seekers of Perl Wisdom