A Functor instance for Handler could be useful: e.g. foo :: IO (Maybe a) handlers :: [Handler ()] foo `catches` map (Nothing <$) handlers Proposed instance definition: instance Functor Handler where fmap f (Handler h) = Handler (fmap f . h) Deadline: 2 weeks