Stanis?aw Findeisen wrote:
> This short program:
>
> #!/usr/bin/perl
>
> use warnings;
> use strict;
>
> use List::Util qw(sum);
>
> my %h = (1 => 5, 2 => 7, 5 => 18);
> my $sk = List::Util->sum(keys %h);
> my $sv = List::Util->sum(values %h);
>
> print("Sum of keys: $sk\n");
> print("Sum of values: $sv\n");
>
> my @lk = (12, 3, 8);
> my $lks = List::Util->sum(@lk);
> print("Sum of lk: $lks\n");
It doesn't appear as though sum() can be called as a class method. It
looks like when you call it as such, it shifts off List::Util and sets
it as the first parameter to sum, which in this case is wrong. This works:
use List::Util qw(sum);
#!/usr/bin/perl
use warnings;
use strict;
use List::Util qw(sum);
my %h = (1 => 5, 2 => 7, 5 => 18);
my $sk = sum(keys %h);
my $sv = sum(values %h);
print("Sum of keys: $sk\n");
print("Sum of values: $sv\n");
Steve
smime.p7s
Description: S/MIME Cryptographic Signature
