4 ms·
using $a or $b for a throw-away script, but Perl uses these internally for sorting Everything I learn about Perl just makes me hate it more. But a lot of peopl
by jey 14y ago
using $a or $b for a throw-away script, but Perl uses these internally for sorting
Everything I learn about Perl just makes me hate it more. But a lot of people seem to love it -- it must have some redeeming qualities, right?
- kamaal 14y agoEverything I learn about the world makes me hate it more. But a lot of people seem to love it --it must have some redeeming qualities, right? Answer: Yes, depends on where in the world you live.
- draegtun 14y agoThere is nothing to be afraid of here, sort just makes use of localised $a & $b package variable names as references to the sort block: our $a = 100; # using $a package variable # then later do a sort on @list my @sorted = sort { $a cmp $b } @list; # @sorted worked correctly, $a = 100 had no effect on it # and $a is still 100 And if we change our to my (so lexical variable) then script will fail to compile giving the fatal error: Can't use "my $a" in sort comparison at... For more information on sort see: http://perldoc.perl.org/functions/sort.html http://perldoc.perl.org/functions/sort.html PS. The OP problem may have been due to issue/bug in older version of Perl. Also using use strict; use warnings do help highlight issues with code.
- bch 14y agoIndeed. First 3 lines of all perl code for me are: #!/usr/bin/env perl use strict; use warnings;