http://www.perlmonks.org?node_id=1067054


in reply to Re^2: A better (ie.more concise) way to write this?
in thread A better (ie.more concise) way to write this?

Then , if you want to modify an existing data structure, what about using the fact that modifying $_ will modify the original array? Something like this, shown under the debugger:
DB<1> @a = 1..9; DB<2> map{ $_ = ++$_% 10 } @a; DB<3> x @a 0 2 1 3 2 4 3 5 4 6 5 7 6 8 7 9 8 0 DB<4>
Well, this obviously works, but something like $c = ++$c is, I believe, not defined in C and probably also not in Perl (i.e. the implementor if free to do whatever). It could be changed to:
map { $_ ++; $_ = $_ % 10} @a;
This would probably be more secure against any change of implementation.