ref: 6804d96d7d8a2dd12e28ea08819fc5f2c59cf724
dir: /test/sqrt.myr/
use std const abs = {d if d < 0.0 -> -d else -> d ;; } const Eps = 0.00001 const Maxiter = 20 const sqrt = {x : flt64 var val var iter var i; val = 1.0; for i = 0; i < Maxiter; i++ iter = 0.5*(val + x/val) if abs(val - iter) < Eps -> val; ;; val = iter; ;; -> val } const main = { std.exit(sqrt(20.0) castto(int)) }