| Copyright | (c) Leon Medvinsky, 2015 | 
|---|---|
| License | GPL-3 | 
| Maintainer | lmedvinsky@hotmail.com | 
| Stability | experimental | 
| Portability | portable | 
| Safe Haskell | Safe-Inferred | 
| Language | Haskell2010 | 
Control.Monad.Fresh.Class
Description
- class Monad m => MonadFresh s m | m -> s where- fresh :: m s
 
- nFresh :: MonadFresh s m => Int -> m [s]
Documentation
class Monad m => MonadFresh s m | m -> s where Source
A class for monads that can give fresh values.
At least for Eq s, an instance of MonadFresh should satisfy
(==)<$>fresh<*>fresh≡fresh*>fresh*>pureFalse
and something similar for any number of fresh.
Instances
nFresh :: MonadFresh s m => Int -> m [s] Source