perlに関する玄人向けTIPS集【1】 をみたら、あまりにツッコミどころが満載だったのでちょっと書いておきます。気を悪くされたらごめんなさい(何か変な日本語だ)。 ハッシュのキーをABC順にソートする foreach my $key(sort $hash{$a} cmp $hash{$b} keys %hash){ sort の引数は sort SUBNAME LIST sort BLOCK LIST sort LISTなので、 sort {} @array が正しい。しかも、{ $hash{$a} cmp $hash{$b} } は hash の value での sort ですね。正しくは以下のようになるのかと。 #!/usr/local/bin/perl my %hash = ( c => 'mount', m => 'play', a => 'zip', l => 'view',