tf-random-0.5: High-quality splittable pseudorandom number generator
Copyright(c) 2012-2013 Michał Pałka
LicenseBSD3
Maintainer[email protected]
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell98

System.Random.TF

Description

This module exports System.Random.TF.Gen and System.Random.TF.Init modules without exporting the alternative RandomGen class from System.Random.TF.Gen. To use this class and the Random instances written for it, please import System.Random.TF.Gen and System.Random.TF.Instances directly.

Synopsis

Documentation

data TFGen Source #

The generator type

seedTFGen :: (Word64, Word64, Word64, Word64) -> TFGen Source #

Create a generator from a random seed.

newTFGen :: IO TFGen Source #

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 Source #

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.