* Dermot (paik...@gmail.com) [140813 11:08]: > > > > > > # Warning: map in void context used for side-effect of setting > > {position}... > > # (I feel so dirty! ;-) > > my $count = 1; > > map { $_->[1]{position} = $count++ } > > sort { $a->[0] <=> $b->[0] } > > map { [$_->{position}, $_] } > > values %{$ref};
> That is filthy....but i like it. There are times I need to keep the > structure as a hashref so I can find items by their key and there are times > when I want to pass the data around as an ordered array so this works well > for me too. Sort is not lazy (cannot be lazy), so this suffices: $_->{position} = $count++ for sort {$a->{position} <=> $b->{position}} values %$ref; -- Regards, MarkOv ------------------------------------------------------------------------ Mark Overmeer MSc MARKOV Solutions m...@overmeer.net soluti...@overmeer.net http://Mark.Overmeer.net http://solutions.overmeer.net