En Haskell tenim una funció until que, donat un predicat p, una funció f i un valor inicial v, va aplicant la funció f tal que v, f(v), f(f(v))… fins que es satisfa el predicat. Per exemple:
té com a resultat 128.
Input
(until1 #(> % 100) #(* 2 %) 1)
Output
128
Input
(until2 #(> % 100) #(* 2 %) 1)
Output
128
Input
(mcd 14 8)
Output
2