name: random-fu
version: 0.2.3.0
stability: provisional
cabal-version: >= 1.6
build-type: Simple
author: James Cook
maintainer: James Cook
license: PublicDomain
homepage: https://github.com/mokus0/random-fu
category: Math
synopsis: Random number generation
description: 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.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
.
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).
tested-with: GHC == 6.10.4, GHC == 6.12.1, GHC == 6.12.3,
GHC == 7.0.1, GHC == 7.0.2, GHC == 7.0.4,
GHC == 7.2.2, GHC == 7.4.1-rc1
source-repository head
type: git
location: https://github.com/mokus0/random-fu.git
subdir: random-fu
Flag base4_2
Description: base-4.2 has an incompatible change in Data.Fixed (HasResolution)
Flag mtl2
Description: mtl-2 has State, etc., as "type" rather than "newtype"
Library
ghc-options: -Wall -funbox-strict-fields
hs-source-dirs: src
exposed-modules: 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.StretchedExponential
Data.Random.Distribution.Gamma
Data.Random.Distribution.Multinomial
Data.Random.Distribution.Normal
Data.Random.Distribution.Pareto
Data.Random.Distribution.Poisson
Data.Random.Distribution.Rayleigh
Data.Random.Distribution.Triangular
Data.Random.Distribution.Uniform
Data.Random.Distribution.Weibull
Data.Random.Distribution.Ziggurat
Data.Random.Internal.Find
Data.Random.Internal.Fixed
Data.Random.Internal.TH
Data.Random.Lift
Data.Random.List
Data.Random.RVar
Data.Random.Sample
if flag(base4_2)
build-depends: base >= 4.2 && <5
else
cpp-options: -Dold_Fixed
build-depends: base >= 4 && <4.2
if flag(mtl2)
build-depends: mtl == 2.*
cpp-options: -DMTL2
else
build-depends: mtl == 1.*
build-depends: gamma,
monad-loops >= 0.3.0.1,
random-shuffle,
random-source == 0.3.*,
rvar == 0.2.*,
syb,
template-haskell,
transformers,
vector >= 0.7
if os(Windows)
cpp-options: -Dwindows
build-depends: erf-native
else
build-depends: erf
if impl(ghc == 7.2.1)
-- Doesn't work under GHC 7.2.1 due to
-- http://hackage.haskell.org/trac/ghc/ticket/5410
-- (7.2.2 is fine though, as long as random-source is new enough)
Buildable: False