... my %hash; while () { my $name = ... my $code = ... push @{ $hash{$name} }, $code; } #### foreach my $name (sort keys %hash) { print join (', ', $name, sort @{ $hash{$name} }), "\n"; }