daily pastebin goal
18%
SHARE
TWEET

[Perl 6] Prime numbers in closures.

cwchen Nov 28th, 2017 80 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. sub prime {
  2.     my $n = 1;
  3.     my $out;
  4.    
  5.     sub {
  6.         loop {
  7.             $n++;
  8.             my $is-prime = True;
  9.  
  10.             loop (my $i = 2; $i <= $n.sqrt; $i++) {
  11.                 if $n mod $i == 0 {
  12.                     $is-prime = False;
  13.                     last;
  14.                 }
  15.             }
  16.            
  17.             if $is-prime {
  18.                 $out = $n;
  19.                 last;
  20.             }
  21.         }
  22.        
  23.         $out;
  24.     }
  25. }
  26.  
  27. my $p = prime();
  28.  
  29. my @arr = (2, 3, 5, 7, 11, 13, 17, 19, 23);
  30.  
  31. loop (my $i = 0; $i < @arr.elems; $i++) {
  32.     $p() == @arr[$i] or die "Wrong value";
  33. }
RAW Paste Data
Top