8 Feb
2006
8 Feb
'06
7:17 p.m.
oleg@pobox.com wrote:
The ability to use functions 'catch', 'bracket', 'catchDyn', etc. in MonadIO other than IO itself has been a fairly frequently requested feature: ... The reason it is not implemented is because these functions cannot be defined for a general MonadIO. However, these functions can be easily defined for a large and interesting subset of MonadIO.
IIRC, that subset is types that can implement this: class (MonadIO m) => StrictMonadIO m where getUnliftIO :: m (m a -> IO a)