New monads
From HaskellWiki
(Difference between revisions)
m (→MonadBase) |
m |
||
| Line 5: | Line 5: | ||
It seems that the liftIO function from MonadIO can be generalized to access whatever the base of a transformer stack happens to be. So there is no need for a liftSTM, liftST, etc. | It seems that the liftIO function from MonadIO can be generalized to access whatever the base of a transformer stack happens to be. So there is no need for a liftSTM, liftST, etc. | ||
| - | View [[MonadBase]]. | + | View [[NewMonads/MonadBase]]. |
== MonadLib == | == MonadLib == | ||
| Line 14: | Line 14: | ||
It also defines BaseM which is like MonadBase above. | It also defines BaseM which is like MonadBase above. | ||
| + | |||
| + | == MonadRandom == | ||
| + | |||
| + | A simple monad transformer to allow computations in the transformed monad to generate random values. | ||
| + | |||
| + | |||
| + | View [[NewMonads/MonadRandom]]. | ||
Revision as of 17:16, 24 August 2006
Contents |
1 MonadBase
It seems that the liftIO function from MonadIO can be generalized to access whatever the base of a transformer stack happens to be. So there is no need for a liftSTM, liftST, etc.
View NewMonads/MonadBase.
2 MonadLib
This is by Iavor S. Diatchki and can be found at http://www.cse.ogi.edu/~diatchki/monadLib/
It is a new version of the mtl package with transformers: ReaderT WriterT StateT ExceptT SearchT ContT
It also defines BaseM which is like MonadBase above.
3 MonadRandom
A simple monad transformer to allow computations in the transformed monad to generate random values.
View NewMonads/MonadRandom.
