Tue, 03 Dec 2024 20:27:54 UTC | login

Information for RPM ghc-random-1.2.1.2-1.fc41.src.rpm

ID1424615
Nameghc-random
Version1.2.1.2
Release1.fc41
Epoch
Archsrc
SummaryPseudo-random number generation
DescriptionThis package provides basic pseudo-random number generation, including the ability to split random number generators. == "System.Random": pure pseudo-random number interface In pure code, use 'System.Random.uniform' and 'System.Random.uniformR' from "System.Random" to generate pseudo-random numbers with a pure pseudo-random number generator like 'System.Random.StdGen'. As an example, here is how you can simulate rolls of a six-sided die using 'System.Random.uniformR': >>> let roll = uniformR (1, 6) :: RandomGen g => g -> (Word, g) >>> let rolls = unfoldr (Just . roll) :: RandomGen g => g -> [Word] >>> let pureGen = mkStdGen 42 >>> take 10 (rolls pureGen) :: [Word] [1,1,3,2,4,5,3,4,6,2] See "System.Random" for more details. == "System.Random.Stateful": monadic pseudo-random number interface In monadic code, use 'System.Random.Stateful.uniformM' and 'System.Random.Stateful.uniformRM' from "System.Random.Stateful" to generate pseudo-random numbers with a monadic pseudo-random number generator, or using a monadic adapter. As an example, here is how you can simulate rolls of a six-sided die using 'System.Random.Stateful.uniformRM': >>> let rollM = uniformRM (1, 6) :: StatefulGen g m => g -> m Word >>> let pureGen = mkStdGen 42 >>> runStateGen_ pureGen (replicateM 10 . rollM) :: [Word] [1,1,3,2,4,5,3,4,6,2] The monadic adapter 'System.Random.Stateful.runStateGen_' is used here to lift the pure pseudo-random number generator 'pureGen' into the 'System.Random.Stateful.StatefulGen' context. The monadic interface can also be used with existing monadic pseudo-random number generators. In this example, we use the one provided in the <https://hackage.haskell.org/package/mwc-random mwc-random> package: >>> import System.Random.MWC as MWC >>> let rollM = uniformRM (1, 6) :: StatefulGen g m => g -> m Word >>> monadicGen <- MWC.create >>> replicateM 10 (rollM monadicGen) :: IO [Word] [2,3,6,6,4,4,3,1,5,4] See "System.Random.Stateful" for more details.
Build Time2024-08-11 09:51:49 GMT
Size90.23 KB
a14b3e2897b3d72d325c4ac4f52fd1bc
LicenseBSD-3-Clause
Buildrootf41-build-837808-159384
Provides
ghc-random = 1.2.1.2-1.fc41
ghc-random-devel = 1.2.1.2-1.fc41
ghc-random-prof = 1.2.1.2-1.fc41
Obsoletes No Obsoletes
Conflicts No Conflicts
Requires
ghc-Cabal-devel
ghc-base-devel
ghc-base-prof
ghc-bytestring-devel
ghc-bytestring-prof
ghc-deepseq-devel
ghc-deepseq-prof
ghc-mtl-devel
ghc-mtl-prof
ghc-rpm-macros-extra
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
Recommends No Recommends
Suggests No Suggests
Supplements No Supplements
Enhances No Enhances
Files
1 through 3 of 3
Name ascending sort Size
ghc-random.spec10.13 KB
random-1.2.1.2.tar.gz46.12 KB
splitmix-0.1.0.5.tar.gz21.87 KB
Component of No Buildroots