The random-fu package

[Tags: public-domain]

Random number generation based on modeling random variables in two complementary ways: first, by the parameters of standard mathematical distributions and, second, by an abstract type (RVar) which can be composed and manipulated monadically and sampled in either monadic or "pure" styles. The primary purpose of this library is to support defining and sampling a wide variety of high quality random variables. Quality is prioritized over speed, but performance is an important goal too. In my testing, I have found it capable of speed comparable to other Haskell libraries, but still a fair bit slower than straight C implementations of the same algorithms. Warning to anyone upgrading from "< 0.1": Discrete has been renamed Categorical, the entropy source classes have been redesigned, and many things are no longer exported from the root module Data.Random (In particular, DevRandom - this is not available on windows, so it will likely move to its own package eventually so that client code dependencies on it will be made explicit). Support for base packages earlier than version 4 (and thus GHC releases earlier than 6.10) has been dropped, as too many of this package's dependencies do not support older versions. The Data.Random module itself should now have a relatively stable interface, but the other modules are still subject to change. Specifically, I am considering hiding data constructors for most or all of the distributions.


Properties

Versions0.0.0.2, 0.0.1.1, 0.0.2.0, 0.0.2.1, 0.0.3, 0.0.3.2, 0.1.0.0, 0.1.3, 0.1.4, 0.2, 0.2.1.0, 0.2.1.1, 0.2.2.0, 0.2.3.0, 0.2.3.1, 0.2.4.0, 0.2.5.0, 0.2.6.0, 0.2.6.1
Dependenciesarray, base (>=4 && <4.2), containers, erf, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==1.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4 && <4.2), containers, erf-native, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==1.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4 && <4.2), containers, erf, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==2.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4 && <4.2), containers, erf-native, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==2.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4.2 && <5), containers, erf, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==1.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4.2 && <5), containers, erf-native, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==1.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4.2 && <5), containers, erf, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==2.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector or
array, base (>=4.2 && <5), containers, erf-native, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (==2.*), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector
LicensePublicDomain
AuthorJames Cook <james.cook@usma.edu>
MaintainerJames Cook <james.cook@usma.edu>
Stabilityprovisional
CategoryMath
Home pagehttp://code.haskell.org/~mokus/random-fu
UploadedMon Nov 8 15:46:08 UTC 2010 by JamesCook
DistributionsNixOS:0.2.6.1, Stackage:0.2.6.1
Downloads4018 total (237 in last 30 days)
StatusDocs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Flags

NameDescriptionDefault
base4_2base-4.2 has an incompatible change in Data.Fixed (HasResolution)Enabled
mtl2mtl-2 has State, etc., as "type" rather than "newtype"Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees