undef is/was IIRC meant to free memory.
though I can't reproduce any difference between an emptied and destroyed array.
list context different:
DB<49> undef @x DB<50> x [ shift @x, splice @x,0,1 ] 0 ARRAY(0x34a5270) 0 undef DB<51> @x=() DB<52> x [ shift @x, splice @x,0,1 ] 0 ARRAY(0x34a6c48) 0 undef DB<53>
scalar context same
DB<54> undef @x DB<55> x [ ($a=shift @x), ($b=splice @x,0,1) ] 0 ARRAY(0x34a6960) 0 undef 1 undef DB<56> @x=() DB<57> x [ ($a=shift @x), ($b=splice @x,0,1) ] 0 ARRAY(0x34a6f18) 0 undef 1 undef
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
FootballPerl is like chess, only without the dice
In reply to Re^4: shift on empty array in list context broken
by LanX
in thread shift on empty array in list context broken
by LanX
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |