random-fu: Random number generation

[ math, public-domain ] [ Propose Tags ]

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.4.0: Added a Lift instance that resolves a common overlapping-instance issue in user code.

Changes in 0.2.3.1: Should now build on GHC 7.6

Changes in 0.2.3.0: Added stretched exponential distribution, contributed by Ben Gamari.

Changes in 0.2.2.0: Bug fixes in Data.Random.Distribution.Categorical.

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

Flags

Automatic Flags
NameDescriptionDefault
base4_2

base-4.2 has an incompatible change in Data.Fixed (HasResolution)

Enabled
mtl2

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

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 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, 0.3.0.0, 0.3.0.1 (info)
Dependencies base (>=4 && <4.8), erf, erf-native, math-functions, monad-loops (>=0.3.0.1), mtl (>=1 && <3), random-shuffle, random-source (>=0.3 && <0.4), rvar (>=0.2 && <0.3), syb, template-haskell, transformers, vector (>=0.7) [details]
License LicenseRef-PublicDomain
Author James Cook <mokus@deepbondi.net>
Maintainer James Cook <mokus@deepbondi.net>
Revised Revision 1 made by Bodigrim at 2022-02-23T23:23:13Z
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 2014-04-05T15:57:54Z
Distributions Arch:0.3.0.1, Debian:0.2.7.4, LTSHaskell:0.3.0.1, NixOS:0.3.0.1, Stackage:0.3.0.1
Reverse Dependencies 44 direct, 21 indirect [details]
Downloads 26432 total (89 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]