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


in reply to Order of execution of functions in list

Also,
my ($a1, $a2) = splice(@_, 0, 2);