mwc-random 0.13.3.0 → 0.13.3.1
raw patch · 4 files changed
+17/−3 lines, 4 filesdep ~basePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base
API changes (from Hackage documentation)
- System.Random.MWC: instance (Variate a, Variate b) => Variate (a, b)
- System.Random.MWC: instance (Variate a, Variate b, Variate c) => Variate (a, b, c)
- System.Random.MWC: instance (Variate a, Variate b, Variate c, Variate d) => Variate (a, b, c, d)
- System.Random.MWC: instance Eq Seed
- System.Random.MWC: instance Show Seed
- System.Random.MWC: instance Typeable Seed
- System.Random.MWC: instance Variate Bool
- System.Random.MWC: instance Variate Double
- System.Random.MWC: instance Variate Float
- System.Random.MWC: instance Variate Int
- System.Random.MWC: instance Variate Int16
- System.Random.MWC: instance Variate Int32
- System.Random.MWC: instance Variate Int64
- System.Random.MWC: instance Variate Int8
- System.Random.MWC: instance Variate Word
- System.Random.MWC: instance Variate Word16
- System.Random.MWC: instance Variate Word32
- System.Random.MWC: instance Variate Word64
- System.Random.MWC: instance Variate Word8
+ System.Random.MWC: instance (System.Random.MWC.Variate a, System.Random.MWC.Variate b) => System.Random.MWC.Variate (a, b)
+ System.Random.MWC: instance (System.Random.MWC.Variate a, System.Random.MWC.Variate b, System.Random.MWC.Variate c) => System.Random.MWC.Variate (a, b, c)
+ System.Random.MWC: instance (System.Random.MWC.Variate a, System.Random.MWC.Variate b, System.Random.MWC.Variate c, System.Random.MWC.Variate d) => System.Random.MWC.Variate (a, b, c, d)
+ System.Random.MWC: instance GHC.Classes.Eq System.Random.MWC.Seed
+ System.Random.MWC: instance GHC.Show.Show System.Random.MWC.Seed
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Int.Int16
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Int.Int32
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Int.Int64
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Int.Int8
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Types.Bool
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Types.Double
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Types.Float
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Types.Int
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Types.Word
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Word.Word16
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Word.Word32
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Word.Word64
+ System.Random.MWC: instance System.Random.MWC.Variate GHC.Word.Word8
- System.Random.MWC: toSeed :: Vector v Word32 => v Word32 -> Seed
+ System.Random.MWC: toSeed :: (Vector v Word32) => v Word32 -> Seed
Files
- ChangeLog +5/−0
- System/Random/MWC.hs +10/−1
- System/Random/MWC/Distributions.hs +1/−1
- mwc-random.cabal +1/−1
ChangeLog view
@@ -1,3 +1,8 @@+Changes in 0.13.3.1++ * primitive-0.6 compatibility++ Changes in 0.13.3.0 * Monadic variant of vector shuffle added: `uniformShuffleM`
System/Random/MWC.hs view
@@ -99,6 +99,9 @@ import Control.Monad (ap, liftM, unless) import Control.Monad.Primitive (PrimMonad, PrimState, unsafePrimToIO)+#if MIN_VERSION_primitive(0,6,0)+import Control.Monad.Primitive (PrimBase)+#endif import Control.Monad.ST (ST) import Data.Bits (Bits, (.&.), (.|.), shiftL, shiftR, xor) import Data.Int (Int8, Int16, Int32, Int64)@@ -428,7 +431,13 @@ -- Cryptographic API as a source of random numbers (it uses the system -- clock instead). As a result, the sequences it generates may not be -- highly independent.-withSystemRandom :: PrimMonad m => (Gen (PrimState m) -> m a) -> IO a+withSystemRandom ::+#if MIN_VERSION_primitive(0,6,0)+ PrimBase m+#else+ PrimMonad m+#endif+ => (Gen (PrimState m) -> m a) -> IO a withSystemRandom act = do seed <- acquireSeedSystem `E.catch` \(_::E.IOException) -> do seen <- atomicModifyIORef warned ((,) True)
System/Random/MWC/Distributions.hs view
@@ -41,7 +41,7 @@ import Control.Monad.Primitive (PrimMonad, PrimState) import Data.Bits ((.&.)) import Data.Foldable (foldl')-import Data.Traversable (Traversable,mapM)+import Data.Traversable (mapM) import Data.Word (Word32) import System.Random.MWC (Gen, uniform, uniformR) import qualified Data.Vector.Unboxed as I
mwc-random.cabal view
@@ -1,5 +1,5 @@ name: mwc-random-version: 0.13.3.0+version: 0.13.3.1 synopsis: Fast, high quality pseudo random number generation description: This package contains code for generating high quality random