RosettaCodeData/Task/Catamorphism/Perl/catamorphism.pl

9 lines
259 B
Raku

use List::Util 'reduce';
# note the use of the odd $a and $b globals
print +(reduce {$a + $b} 1 .. 10), "\n";
# first argument is really an anon function; you could also do this:
sub func { $b & 1 ? "$a $b" : "$b $a" }
print +(reduce \&func, 1 .. 10), "\n"