[Haskell-beginners] Monad Transformer Type Signatures

Britt Anderson britt.uwaterloo at gmail.com
Mon Feb 14 20:10:13 CET 2011

I am looking at code from a tutorial that has the following type
signature for a function:

getScreen :: MonadReader AppConfig m => m Surface

AppConfig is a data structure that was defined previously. My question
is how am I to interpret this type signature? Is it any m belonging to
the MonadReader AppConfig class? or any AppConfig m belonging to the
MonadReader class? Since I can't see any instance of the MonadReader
Class being defined for MonadReader AppConfig I am puzzled.

I would appreciate some clarification or a pointer to a prior
discussion of this issue. I have tried to look on my own.

Thank you.

More information about the Beginners mailing list