http://qs321.pair.com?node_id=11101703


in reply to Re: Sort alphabetically from file
in thread Sort alphabetically from file

$a =~ s/[\s\d]*//r cmp $b =~ s///r

Doesn't the proper operation of the compare using this trick (for which, I think, see "The empty pattern //" in perlop) assume a left-side-then-right-side order in which cmp (see Equality Operators in perlop) evaluates its operands (which I don't see specified anywhere)? I.e.,
    $a =~ s///r cmp $b =~ s/[\s\d]*//r
fails (testing under Perl version 5.14). One can imagine that such a situation might easily arise during a cut/paste change of sorting order from ascending to descending. Isn't this a bug waiting to be born (can we call it a larva)? Doesn't it at least merit a prominent comment?


Give a man a fish:  <%-{-{-{-<