until -package:numeric-prelude -package:language-bash -package:clash-prelude -package:dimensional -package:llvm-hs-pure -package:extra -package:classy-prelude -package:linear-base -package:foundation -package:basic-prelude package:utility-ht
repeat action until result fulfills condition
Take all elements until one matches. The matching element is returned,
too. This is the key difference to
takeWhile (not . p). It
holds:
forAllPredicates $ \p xs -> takeUntil p xs == fst (breakAfter p xs)