|
|
| Think about Loose Coupling | |
| PerlMonks |
Comment on |
| ( #3333=superdoc: print w/ replies, xml ) | Need Help?? |
|
Hi Monks, Why does a list assignment to a list in scalar context return the number of elements on the right side list, but NOT the last element of the left side list that has been assigned values? I know that:
and that:
Now check a scalar assignment to a scalar in scalar context: if( $i = 0 ) which will evaluate to the value of $i on the left side, thus evaluate to 0, thus evaluate to FALSE but consider an example of list assignment above: To me, it seems like it should evaluate to the value of list ($k, $v) on the left side just like $i above, thus should evaluate to the last element of list ($k, $v) --- $v, thus evaluate to 0 and at last should evaluate to --- FALSE, although I know the correct answer is it will evaluate to true. So, the question is: for what purpose are the designing principles of scalar assignment and list assignment both in scalar context completely different? Just for convenience of usage? Isn't that a bit confusing? In reply to list assignment to list in scalar context by Anonymous Monk
|
|