Hello world,

I’ve just started playing with the http-conduit package and started inspecting type signatures of some of the functions, and I stumbled upon many things that look like this

*Main Network.HTTP.Conduit> :t withManager
withManager
  :: (monad-control-0.3.2.2:Control.Monad.Trans.Control.MonadBaseControl
        IO m,
      transformers-0.3.0.0:Control.Monad.IO.Class.MonadIO m) =>
     (Manager
      -> resourcet-0.4.10:Control.Monad.Trans.Resource.Internal.ResourceT
           m a)
     -> m a

The question is … how am I supposed to read these? It seems that they wrap around (maybe) 80 characters, which makes them unreadable … and the package prefixes also don’t really help.

I’d like to point out here that I’m really a noob without any practical experience in Haskell, I’ve just read a few books. So I don’t have a problem understanding the concepts, but more and more often I find myself struggling just to read the type signature correctly

Thanks for any tips, Jakub