until -package:numeric-prelude -package:yesod-paginator -package:prelude-compat -package:numhask -package:basic-prelude -package:mixed-types-num -package:elerea -package:snap-core -package:termonad -package:dimensional package:utility-ht -is:exact
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)