MonadRandom 0.5.3 → 0.6
raw patch · 5 files changed
+47/−60 lines, 5 filesdep ~basedep ~mtldep ~primitivePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base, mtl, primitive, transformers
API changes (from Hackage documentation)
- Control.Monad.Random.Class: instance (Control.Monad.Trans.Error.Error e, Control.Monad.Random.Class.MonadInterleave m) => Control.Monad.Random.Class.MonadInterleave (Control.Monad.Trans.Error.ErrorT e m)
- Control.Monad.Random.Class: instance (Control.Monad.Trans.Error.Error e, Control.Monad.Random.Class.MonadRandom m) => Control.Monad.Random.Class.MonadRandom (Control.Monad.Trans.Error.ErrorT e m)
- Control.Monad.Random.Class: instance (Control.Monad.Trans.Error.Error e, Control.Monad.Random.Class.MonadSplit g m) => Control.Monad.Random.Class.MonadSplit g (Control.Monad.Trans.Error.ErrorT e m)
- Control.Monad.Random.Class: instance Control.Monad.Random.Class.MonadInterleave m => Control.Monad.Random.Class.MonadInterleave (Control.Monad.Trans.List.ListT m)
- Control.Monad.Random.Class: instance Control.Monad.Random.Class.MonadRandom m => Control.Monad.Random.Class.MonadRandom (Control.Monad.Trans.List.ListT m)
- Control.Monad.Random.Class: instance Control.Monad.Random.Class.MonadSplit g m => Control.Monad.Random.Class.MonadSplit g (Control.Monad.Trans.List.ListT m)
+ Control.Monad.Random.Lazy: class Finite a
+ Control.Monad.Random.Lazy: initStdGen :: MonadIO m => m StdGen
+ Control.Monad.Random.Strict: class Finite a
+ Control.Monad.Random.Strict: initStdGen :: MonadIO m => m StdGen
Files
- CHANGES.markdown +11/−0
- Control/Monad/Random/Class.hs +0/−26
- Control/Monad/Trans/Random/Lazy.hs +16/−15
- Control/Monad/Trans/Random/Strict.hs +13/−13
- MonadRandom.cabal +7/−6
CHANGES.markdown view
@@ -1,9 +1,20 @@+0.6 (5 Nov 2022)+----------------++- Remove instances for deprecated `ErrorT` and `ListT` transformers+- Allow building with `transformers-0.6` and `mtl-2.3.1`+- Drop support for GHC 7.6 and 7.8+ 0.5.3 (8 April 2021) -------------------- - `StatefulGen` instances for `RandT` - Addition of `RandGen` - Additioon of `withRandGen` and `withRandGen_`++- r1 (28 April 2021): require `base >= 4.6`+- r2 (9 Aug 2021): allow `transformers-compat-0.7`.+- r3 (9 Aug 2022): Test with GHC 9.0-9.4 0.5.2 (24 June 2020) --------------------
Control/Monad/Random/Class.hs view
@@ -54,10 +54,8 @@ import Control.Monad import Control.Monad.Trans.Class import Control.Monad.Trans.Cont-import Control.Monad.Trans.Error import Control.Monad.Trans.Except import Control.Monad.Trans.Identity-import Control.Monad.Trans.List import Control.Monad.Trans.Maybe import Control.Monad.Trans.Reader import qualified Control.Monad.Trans.RWS.Lazy as LazyRWS@@ -130,12 +128,6 @@ getRandomRs = lift . getRandomRs getRandoms = lift getRandoms -instance (Error e, MonadRandom m) => MonadRandom (ErrorT e m) where- getRandomR = lift . getRandomR- getRandom = lift getRandom- getRandomRs = lift . getRandomRs- getRandoms = lift getRandoms- instance (MonadRandom m) => MonadRandom (ExceptT e m) where getRandomR = lift . getRandomR getRandom = lift getRandom@@ -148,12 +140,6 @@ getRandomRs = lift . getRandomRs getRandoms = lift getRandoms -instance (MonadRandom m) => MonadRandom (ListT m) where- getRandomR = lift . getRandomR- getRandom = lift getRandom- getRandomRs = lift . getRandomRs- getRandoms = lift getRandoms- instance (MonadRandom m) => MonadRandom (MaybeT m) where getRandomR = lift . getRandomR getRandom = lift getRandom@@ -227,18 +213,12 @@ instance (MonadSplit g m) => MonadSplit g (ContT r m) where getSplit = lift getSplit -instance (Error e, MonadSplit g m) => MonadSplit g (ErrorT e m) where- getSplit = lift getSplit- instance (MonadSplit g m) => MonadSplit g (ExceptT e m) where getSplit = lift getSplit instance (MonadSplit g m) => MonadSplit g (IdentityT m) where getSplit = lift getSplit -instance (MonadSplit g m) => MonadSplit g (ListT m) where- getSplit = lift getSplit- instance (MonadSplit g m) => MonadSplit g (MaybeT m) where getSplit = lift getSplit @@ -318,17 +298,11 @@ instance (MonadInterleave m) => MonadInterleave (ContT r m) where interleave = mapContT interleave -instance (Error e, MonadInterleave m) => MonadInterleave (ErrorT e m) where- interleave = mapErrorT interleave- instance (MonadInterleave m) => MonadInterleave (ExceptT e m) where interleave = mapExceptT interleave instance (MonadInterleave m) => MonadInterleave (IdentityT m) where interleave = mapIdentityT interleave--instance (MonadInterleave m) => MonadInterleave (ListT m) where- interleave = mapListT interleave instance (MonadInterleave m) => MonadInterleave (MaybeT m) where interleave = mapMaybeT interleave
Control/Monad/Trans/Random/Lazy.hs view
@@ -56,27 +56,28 @@ -- $examples ) where -import Control.Applicative-import Control.Arrow (first)-import Control.Monad-import Control.Monad.Cont.Class-import Control.Monad.Error.Class-import qualified Control.Monad.Fail as Fail-import Control.Monad.Fix-import Control.Monad.IO.Class-import Control.Monad.Primitive-import Control.Monad.Random.Class-import Control.Monad.RWS.Class-import Control.Monad.Signatures-import Control.Monad.Trans.Class+import Control.Applicative ( Alternative )+import Control.Arrow (first)+import Control.Monad ( liftM, MonadPlus )+import Control.Monad.Cont.Class (MonadCont(..))+import Control.Monad.Error.Class ( MonadError(..) )+import qualified Control.Monad.Fail as Fail+import Control.Monad.Fix ( MonadFix )+import Control.Monad.IO.Class ( MonadIO(..) )+import Control.Monad.Primitive ( PrimMonad(..) )+import Control.Monad.Random.Class ( MonadInterleave(..), MonadSplit(..), MonadRandom(..) )+import Control.Monad.RWS.Class ( MonadState(..), MonadRWS, MonadReader, MonadWriter )+import Control.Monad.Signatures ( Listen, Pass, CallCC, Catch )+import Control.Monad.Trans.Class ( MonadTrans(..) ) import qualified Control.Monad.Trans.State.Lazy as LazyState-import Control.Monad.Trans.Random.Strict (RandGen(..))-import Data.Functor.Identity+import Control.Monad.Trans.Random.Strict (RandGen(..))+import Data.Functor.Identity ( Identity(runIdentity) ) #if MIN_VERSION_random(1,2,0) import System.Random.Stateful #else import System.Random #endif+ -- | A random monad parameterized by the type @g@ of the generator to carry. -- -- The 'return' function leaves the generator unchanged, while '>>=' uses the
Control/Monad/Trans/Random/Strict.hs view
@@ -57,21 +57,21 @@ -- $examples ) where -import Control.Applicative-import Control.Arrow (first)-import Control.Monad-import Control.Monad.Cont.Class-import Control.Monad.Error.Class+import Control.Applicative ( Alternative )+import Control.Arrow (first)+import Control.Monad ( liftM, MonadPlus )+import Control.Monad.Cont.Class (MonadCont(..))+import Control.Monad.Error.Class ( MonadError(..) ) import qualified Control.Monad.Fail as Fail-import Control.Monad.Fix-import Control.Monad.IO.Class-import Control.Monad.Primitive-import Control.Monad.Random.Class-import Control.Monad.RWS.Class-import Control.Monad.Signatures-import Control.Monad.Trans.Class+import Control.Monad.Fix ( MonadFix )+import Control.Monad.IO.Class ( MonadIO(..) )+import Control.Monad.Primitive ( PrimMonad(..) )+import Control.Monad.Random.Class ( MonadInterleave(..), MonadSplit(..), MonadRandom(..) )+import Control.Monad.RWS.Class ( MonadState(..), MonadRWS, MonadReader, MonadWriter )+import Control.Monad.Signatures ( Listen, Pass, CallCC, Catch )+import Control.Monad.Trans.Class ( MonadTrans(..) ) import qualified Control.Monad.Trans.State.Strict as StrictState-import Data.Functor.Identity+import Data.Functor.Identity ( Identity(runIdentity) ) #if MIN_VERSION_random(1,2,0) import System.Random.Stateful #else
MonadRandom.cabal view
@@ -1,5 +1,5 @@ name: MonadRandom-version: 0.5.3+version: 0.6 synopsis: Random-number generation monad. description: Support for computations which consume random values. license: BSD3@@ -11,7 +11,7 @@ build-type: Simple cabal-version: >=1.10 extra-source-files: CHANGES.markdown-tested-with: GHC ==7.6.3 || ==7.8.4 || ==7.10.3 || ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.3 || ==8.10.1+tested-with: GHC ==7.10.3 || ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.4 || ==9.4.2 source-repository head type: git@@ -27,14 +27,15 @@ Control.Monad.Trans.Random.Lazy, Control.Monad.Trans.Random.Strict build-depends:- base >=2 && <5,- transformers >=0.3 && <0.6,- transformers-compat >=0.4 && <0.7,- mtl >=2.1 && <2.3,+ base >=4.6 && <5,+ transformers >=0.4 && <0.7,+ transformers-compat >=0.4 && <0.8,+ mtl >=2.2.1 && <2.3 || >= 2.3.1 && < 2.4, primitive >=0.6 && <0.8, random >=1.0 && <1.3 ghc-options: -Wall default-language: Haskell2010+ other-extensions: Safe if impl(ghc < 8.0) build-depends: fail >= 4.9