Согласно документации существует MonadIO
экземпляр для ConduitM, если у базовой монады есть MonadIO
экземпляр (MonadIO m => MonadIO (ConduitM i o m)
).
Почему тогда это:
yield (1::Int) $$ await >>= (liftIO.print) :: IO ()
потерпеть неудачу с этим:
Нет экземпляра для (MonadIO (ConduitM Int Data.Void.Void IO)), возникающего из-за использования 'liftIO' в первом аргументе '(.)', А именно 'liftIO' во втором аргументе '(>> =) ', а именно' (liftIO. print) 'Во втором аргументе' ($$) ', а именно' await >> = (liftIO. print) '
Что мне здесь не хватает?
Только что проверил, видимо у меня трансформаторы 0,22 и 0,3, может быть причина.