until -package:foundation -package:ghc -package:termonad -package:github package:protolude

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