[英]How to fix missing instance of IO for a function constrained on MonadReader and MonadIO?
[英]Missing instance MonadIO for ConduitM?
據的文檔有一個MonadIO
用於ConduitM例如,如果底層單子具有MonadIO
實例( MonadIO m => MonadIO (ConduitM iom)
為什么這樣做:
yield (1::Int) $$ await >>= (liftIO.print) :: IO ()
對此失敗:
沒有在((。)''的第一個參數中使用'liftIO'引起的(MonadIO(ConduitM Int Data.Void.Void IO))的實例,即在((>> =)的第二個參數中使用'liftIO' ',即'(liftIO。print)'在第二個參數(($$)'中,即'await >> =(liftIO。print)'
我在這里想念什么?
剛剛檢查過,顯然我同時擁有變壓器0.22和變壓器0.3,這可能是原因。
問題是導管依賴於translators-0.2.2.1(出於某種原因),而我同時擁有translators-0.3.0.0-隱藏translators-0.3.0.0暫時解決了這個問題(如果我使用cabal,它可能會也工作)。 實際上,這是與此處相同的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.