[Perl 6] Laziness in iterators.
sub filter($f, @arr) {
gather {
for @arr -> $e {
take $e if $f($e);
}
}
}
my @even = filter({ $_ mod 2 == 0 }, 1..Inf)[0..4];
@even ~~ (2, 4, 6, 8, 10) or die "Wrong array {@even}";
Comments
0 B
|👍
/👎
0 B
|👍
/👎