1let 2 // f[] returns true or false. Execute f[] on the GPU, colour the world 3 // green if it is true, red if it is false. 4 sc_assert(f) = make_shape { 5 dist : everything.dist, 6 colour p : 7 let [x,y,z,t] = p; 8 b = bit(f[]); 9 in [1-b, b, 0], 10 is_2d : true, 11 }; 12 fact n = 13 let i = 1; 14 r = 1; 15 in do 16 while (i <= n) ( 17 r := r * i; 18 i := i + 1; 19 ); 20 in r; 21in do 22 print(fact 5); 23 assert(fact 5 == 120); 24in 25sc_assert([]->(fact 5 == 120)) 26