in reply to Help creating a data structure

If I understand this correctly, you don't need to do anything special to preserve the order, because the order can be reconstructed using a custom sort routine.

For example:

my %pres = (); $pres{ s1 }{ Name } = 'name of first presentation'; $pres{ s1 }{ Grade } = 5; #etc. for my $id ( sort ById keys %pres ) { # whatever } sub ById { GetNumeric( $a ) <=> GetNumeric( $b ); } sub GetNumeric{ my $subject = shift; /(\d+)/; return $1; }

One world, one people