# random-fu: Random number generation

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.

Versions | 0.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, 0.2.6.2, 0.2.7.0 |
---|---|

Dependencies | array, base (==4.*), containers, erf, erf-native, mersenne-random-pure64, monad-loops (>=0.3.0.1), MonadPrompt, mtl (>=1 && <3), mwc-random, random, random-shuffle, stateref (==0.3.*), syb, tagged, template-haskell, vector [details] |

License | LicenseRef-PublicDomain |

Author | James Cook <james.cook@usma.edu> |

Maintainer | James Cook <james.cook@usma.edu> |

Category | Math |

Home page | https://github.com/mokus0/random-fu |

Source repo | head: git clone https://github.com/mokus0/random-fu.git -b v0.1-series |

Uploaded | by JamesCook at Fri Jun 24 14:52:59 UTC 2011 |

Distributions | Debian:0.2.6.2, LTSHaskell:0.2.7.0, NixOS:0.2.7.0, Stackage:0.2.7.0 |

Downloads | 11624 total (65 in the last 30 days) |

Rating | (no votes yet) [estimated by rule of succession] |

Your Rating | |

Status | Docs uploaded by user Build status unknown [no reports yet] Hackage Matrix CI |

## Modules

[Index]

*Data*- Data.Random
- Data.Random.Distribution
- Data.Random.Distribution.Bernoulli
- Data.Random.Distribution.Beta
- Data.Random.Distribution.Binomial
- Data.Random.Distribution.Categorical
- Data.Random.Distribution.Dirichlet
- Data.Random.Distribution.Exponential
- Data.Random.Distribution.Gamma
- Data.Random.Distribution.Multinomial
- Data.Random.Distribution.Normal
- Data.Random.Distribution.Poisson
- Data.Random.Distribution.Rayleigh
- Data.Random.Distribution.Triangular
- Data.Random.Distribution.Uniform
- Data.Random.Distribution.Weibull
- Data.Random.Distribution.Ziggurat

*Internal*- Data.Random.Lift
- Data.Random.List
- Data.Random.RVar
- Data.Random.Sample
- Data.Random.Source

- Data.Random.Distribution

- Data.Random

## Flags

Name | Description | Default | Type |
---|---|---|---|

base4_2 | base-4.2 has an incompatible change in Data.Fixed (HasResolution) | Enabled | Automatic |

mtl2 | mtl-2 has State, etc., as "type" rather than "newtype" | Enabled | Automatic |

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

## Downloads

- random-fu-0.1.4.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)