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

Changes in 0.2.1.1: Changed some one-field data types to newtypes, updated types for GHC 7.4's removal of Eq and Show from the context of Num, and added RVarT versions of random variables in Data.Random.List

Changes in 0.2.1.0: Exposed Categorical type (it
had been hidden by accident a few version ago),
gave it a Read instance, and dropped a
no-longer-necessary Ord context from `fromWeightedList`

.
Thank you Antal Spector-Zabusky for catching these!

Changes in 0.2.0.2: None except setting "Buildable: False" under GHC 7.2.1 (see flexible-defaults 0.0.0.2 for more detailed explanation).

Changes in 0.2: The old random-fu package has been split into three parts: random-source, rvar, and this new random-fu. The end-user interface is mostly the same.

Versions [faq] | 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, 0.2.7.3, 0.2.7.4, 0.2.7.6, 0.2.7.7 (info) |
---|---|

Dependencies | base (==4.*), erf, erf-native, gamma, monad-loops (>=0.3.0.1), mtl (>=1 && <3), random-shuffle, random-source (==0.3.*), rvar (==0.2.*), syb, template-haskell, transformers, vector (>=0.7) [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(random-fu) |

Uploaded | by JamesCook at 2012-01-03T16:05:42Z |

Distributions | Arch:0.2.7.7, Debian:0.2.7.0, LTSHaskell:0.2.7.0, NixOS:0.2.7.7, Stackage:0.2.7.0 |

Downloads | 21754 total (97 in the last 30 days) |

Rating | (no votes yet) [estimated by Bayesian average] |

Your Rating | |

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

## 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.ChiSquare
- 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.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.2.1.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)