1 | module Data.Witherable
3 | import public Data.Filterable
7 | interface (Filterable t,
Traversable t) => Witherable t where
8 | wither : (Applicative f) => (a -> f (Maybe b)) -> t a -> f (t b)
9 | wither k = map catMaybes . traverse k
12 | Witherable Maybe where
15 | Witherable List where