0

ドキュメンテーションによると、基になる Monad にインスタンス ( )MonadIOがある場合、ConduitM のインスタンスがあります。MonadIOMonadIO m => MonadIO (ConduitM i o m)

なぜこれを行うのですか:

yield (1::Int) $$ await >>= (liftIO.print) :: IO ()

これで失敗します:

'liftIO' の使用から生じる (MonadIO (ConduitM Int Data.Void.Void IO)) のインスタンスはありません '(.)' の最初の引数、つまり 'liftIO' '(>>=) の 2 番目の引数'、つまり '(liftIO . print)' '($$)' の 2 番目の引数で、つまり 'await >>= (liftIO . print)'</p>

ここで何が欠けていますか?


確認したところ、明らかにトランス0.22とトランス0.3の両方があり、それが原因である可能性があります。

4

1 に答える 1