until -package:singletons-base -package:monad-loops -package:free package:github

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