Rock Interpreter

Execute Clear Out Clear Code Verbosity: 0 Source on GitHub Syntax ? -- Example Rock program -- Print all primes up to limit. limit := 1000 i := 2 p := " is prime -- main loop loop: call is_prime i jumpif noprint $res is False say i .. p noprint: jumpif end i == limit i = i + 1 jump loop end: die -- returns true if n is prime, false otherwise. is_prime: n -- square root of n jumpif is_prime_true n is 2 lim := n ^ 0.5 lim = floor lim lim = lim + 1 i := 2 is_prime_loop: tmp := n % i jumpif is_prime_false tmp is 0 jumpif is_prime_true i == lim i = i + 1 jump is_prime_loop is_prime_false: return False is_prime_true: return True Close One statement per line. A statement can be: A variable definition: a := 1 (creates new variable in current scope) A variable reassign: a = 2 ...

Linked on 2017-09-18 05:03:08 | Similar Links