break package:utility-ht
It is Data.List.span f undefined = undefined, whereas
span f undefined = (undefined, undefined).
Like
break, but splits after the matching element.
forAllPredicates $ \p xs -> uncurry (++) (breakAfter p xs) == xs
forAllMaybeFn $ \f xs -> snd (breakJust f xs) == dropWhileNothing f xs