mwc-random: Fast, high quality pseudo random number generation

[ bsd3, library, math, statistics ] [ Propose Tags ]
Versions 0.4.1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Dependencies base (<5), primitive (<0.6), time, vector (>=0.7) [details]
License BSD-3-Clause
Copyright 2009, 2010, 2011 Bryan O'Sullivan
Author Bryan O'Sullivan <>
Maintainer Bryan O'Sullivan <>
Revised Revision 1 made by AlexeyKhudyakov at Mon Apr 6 16:55:03 UTC 2015
Category Math, Statistics
Home page
Bug tracker
Source repo head: git clone git://
head: hg clone
Uploaded by BryanOSullivan at Wed Mar 7 06:11:09 UTC 2012
Distributions Arch:, Debian:, Fedora:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:, openSUSE:
Downloads 95138 total (327 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

This package contains code for generating high quality random numbers that follow either a uniform or normal distribution. The generated numbers are suitable for use in statistical applications.

The uniform PRNG uses Marsaglia's MWC256 (also known as MWC8222) multiply-with-carry generator, which has a period of 2^8222 and fares well in tests of randomness. It is also extremely fast, between 2 and 3 times faster than the Mersenne Twister.

Compared to the mersenne-random package, this package has a more convenient API, is faster, and supports more statistical distributions.

[Skip to Readme]




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

For package maintainers and hackage trustees

Readme for mwc-random-

[back to package description]

Efficient, general purpose pseudo-random number generation

This package provides the System.Random.MWC module, a Haskell library for generating high-quality pseudo-random numbers in a space- and time-efficient way.

Get involved!

Please report bugs via the github issue tracker.

Master git git repository:

  • git clone git://

There's also a Mercurial mirror:

  • hg clone

(You can create and contribute changes using either Mercurial or git.)


This library is written and maintained by Bryan O'Sullivan,