declare fun {Sqrt X} fun {Improve Guess} (Guess + X/Guess) / 2.0 end fun {GoodEnough Guess} {Abs X-Guess*Guess}/X < 0.00001 end fun {SqrtIter Guess} if {GoodEnough Guess} then Guess else {SqrtIter {Improve Guess}} end end Guess=1.0 in {SqrtIter Guess} end