#!/usr/bin/env perl6 sub sieve_sundaram($n) { my %a; my @s = <2>; my $m = $n / 2 - 1; for 1..$n -> $i { for 1..$n -> $j { my $p = $i + $j + 2 * $i * $j; if $p < $m { %a{$p} = True; } } } for 1..$m -> $k { if ! %a{$k} { my $q = 2 * $k + 1; @s.push($q); } } return @s; } sieve_sundaram(1e3);