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

Safe HaskellNone

System.Random.TF.Init

Synopsis

Documentation

newTFGen :: IO TFGenSource

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 -> TFGenSource

Quick and dirty way of creating a deterministically seeded generator.

mkSeedTime :: IO (Word64, Word64, Word64, Word64)Source

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

mkSeedUnix :: IO (Word64, Word64, Word64, Word64)Source

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

initTFGen :: IO TFGenSource

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