until -package:singletons-base -package:free -package:selective package:foundation

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