tf-random-0.5: High-quality splittable pseudorandom number generator

Safe HaskellNone
LanguageHaskell98

System.Random.TF.Init

Synopsis

Documentation

newTFGen :: IO TFGen #

Derive a new generator instance from the global RNG using split. This is the default way of obtaining a new RNG instance. Initial generator is seeded using mkSeedUnix on UNIX, and mkSeedTime otherwise. This should be eventually replaced with proper seeding.

mkTFGen :: Int -> TFGen #

Quick and dirty way of creating a deterministically seeded generator.

mkSeedTime :: IO (Word64, Word64, Word64, Word64) #

Use system time create the random seed. This method of seeding may not be relible.

mkSeedUnix :: IO (Word64, Word64, Word64, Word64) #

Use the UNIX special file /dev/urandom to create the seed. Inspired by random-mwc.

initTFGen :: IO TFGen #

Create a seed and used it to seed an instance of TFGen. Uses mkSeedUnix on UNIX, and mkSeedTime otherwise.