map { push( @{$_ % 2 ? \@odd : \@even }, "+$_" ) } @numbers; #### Experimental push on scalar is now forbidden at pf.pl line 13, near ""+$_" ) " #### push( @{$_ % 2 ? \@odd : \@even }, "+$_" ) for @numbers; #### my @evenodd = (\@even, \@odd); push( @{$evenodd[$_ % 2]}, "+$_" ) for @numbers;