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.

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
Change log changelog.md
Dependencies base (==4.*), erf, erf-native, logfloat (==0.12.*), math-functions, 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 <mokus@deepbondi.net>
Maintainer James Cook <mokus@deepbondi.net>
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 DominicSteinitz at Wed Sep 17 15:12:12 UTC 2014
Distributions Debian:0.2.6.2, LTSHaskell:0.2.7.0, NixOS:0.2.7.0, Stackage:0.2.7.0
Downloads 11930 total (308 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]

Flags

NameDescriptionDefaultType
base4_2

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

EnabledAutomatic
mtl2

mtl-2 has State, etc., as "type" rather than "newtype"

EnabledAutomatic

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

Downloads

Maintainer's Corner

For package maintainers and hackage trustees