newtype X a = X (ReaderT XConf (StateT XState IO) a)
#ifndef __HADDOCK__
    deriving (Functor, Monad, MonadIO, MonadState XState, MonadReader XConf,
Typeable)
#endif

In `X (ReaderT XConf (StateT XState IO) a)`, X is a type constructor, how to
understand `(ReaderT XConf (StateT XState IO) a)` ?  And why use `#ifndef
__HADDOCK__` ?

Sincerely!

-----
fac n = foldr (*) 1 [1..n]
-- 
View this message in context: 
http://old.nabble.com/How-to-understand-such-a-newtype---tp26462332p26462332.html
Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to