Generator/Exponential: Difference between revisions

→‎{{header|Perl 6}}: add Perl 6 entry
(Add Perl. Tweak C, Ruby.)
(→‎{{header|Perl 6}}: add Perl 6 entry)
Line 396:
 
Output: <pre>[529, 576, 625, 676, 784, 841, 900, 961, 1024, 1089]</pre>
=={{header|Perl 6}}==
As with Haskell, generators are disguised as lazy lists in Perl&nbsp;6.
<lang perl6>sub powers($m) { 0..* X** $m }
 
my @squares := powers(2);
my @cubes := powers(3);
 
sub infix:<without> (@orig,@veto) {
gather for @veto -> $veto {
take @orig.shift while @orig[0] before $veto;
@orig.shift if @orig[0] eqv $veto;
}
}
 
say (@squares without @cubes)[20 ..^ 20+10].join(', ');</lang>
 
=={{header|PicoLisp}}==
Anonymous user