until -package:monad-loops -package:foundation package:protolude

until p f yields the result of applying f until p holds.