Michele Dondi writes:
> Quite similarly, for example, I'd like to have a fold() function like the 
> one that is available in many functional programming languages, a la:
> 
>   my $tot = fold 0, { + }, 1..10; # 55
>   my $fact = fold 1, { * }, 2..5; # 120
> 
> (i.e. please DO NOT point out that there other WTDI: it's obvious that 
> there are...)

Well, Perl 6 is coming with one of those as a builtin, called C<reduce>
(see List::Util).  But you can't quite use a shorthand syntax like
yours.  You have to say either:

    my $tot  = reduce { $^a + $^b } 1..10;  # 55

Or:

    my $tot  = reduce &operator:+ <== 1..10; # 55

(The <== was added as documentation; it could have been a comma as
well).

Luke

Reply via email to