私がやりたいこととまったく同じように見えるので、このconnecting-http-conduit-to-xml-conduit stackoverflowの質問に従ってみました。
yesod bookのhttp-conduitセクションの例を元に作成しています。
コード
getBody = do
manager <- liftIO $ newManager def
req <- liftIO $ parseUrl fredURL
http req manager
エラー
No instance for (monad-control-0.3.1.3:Control.Monad.Trans.Control.MonadBaseControl
IO m0)
arising from a use of `http'
Possible fix:
add an instance declaration for
(monad-control-0.3.1.3:Control.Monad.Trans.Control.MonadBaseControl
IO m0)
In a stmt of a 'do' block: http req manager
In the expression:
do { manager <- liftIO $ newManager def;
req <- liftIO $ parseUrl fredURL;
http req manager }
In an equation for `getBody':
getBody
= do { manager <- liftIO $ newManager def;
req <- liftIO $ parseUrl fredURL;
http req manager }
目標
xml-conduit Sink で使用される Source を返そうとしています。その目的は、XML-Conduit を使用して XML を解析し、それを Haskelldata
型として表現することです。エラーが発生する理由について説明を得ることができますか?