]> gerrit.simantics Code Review - simantics/platform.git/blob - tests/org.simantics.scl.compiler.tests/src/org/simantics/scl/compiler/tests/scl/Primes.scl
Merge commit 'd1a82fe'
[simantics/platform.git] / tests / org.simantics.scl.compiler.tests / src / org / simantics / scl / compiler / tests / scl / Primes.scl
1 import "JavaBuiltin" as Java\r
2 \r
3 infixl 7  (%)\r
4 infixl 6  (+)\r
5 infix  4  (==), (<)\r
6 \r
7 (+) = Java.iadd\r
8 (%) = Java.irem\r
9 (<) = Java.icmplt\r
10 (==) = Java.icmpeq\r
11 \r
12 isPrime p = isPrimeAux (2 :: Integer) p\r
13   where\r
14     isPrimeAux d p = if d == p then True\r
15                      else if p % d == 0 then False\r
16                      else isPrimeAux (d+1) p\r
17                    \r
18 nextPrime p = if isPrime p \r
19               then p\r
20               else nextPrime (p+(1 :: Integer))                   \r
21                      \r
22 main = nextPrime 32\r
23 --\r
24 37