use mapcar; my $sample= [ [5,7,2], [9,4,8], [1,6,3] ]; my @refs= sort {$$a cmp $$b} map \(@$_), @$sample; mapcar { my( $ref, $val )= @_; $$ref= $val; } \@refs, [ map $$_, @refs ];