wurzel :: Double -> Double -> Double wurzel a eps = loop a where loop :: Double -> Double loop h | abs( (h * h) - a ) <= eps = h | otherwise = loop (0.5 * (h + (a / h)))