Permalink
Browse files

Initial commit.

--HG--
extra : convert_revision : e69ad6092803b50dd452169814f629968a11870d
  • Loading branch information...
0 parents commit e4a0938f39f177c90cfa7cf9b74677c4109be306 @bos committed Dec 26, 2009
Showing with 579 additions and 0 deletions.
  1. +26 −0 LICENSE
  2. +45 −0 README
  3. +3 −0 Setup.lhs
  4. +473 −0 System/Random/MWC.hs
  5. +32 −0 mwc-random.cabal
26 LICENSE
@@ -0,0 +1,26 @@
+Copyright (c) 2009, Bryan O'Sullivan
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45 README
@@ -0,0 +1,45 @@
+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.
+
+
+Performance
+-----------
+
+This library has been carefully optimised for high performance. To
+obtain the best runtime efficiency, it is imperative to compile
+libraries and applications that use this library using a high level of
+optimisation.
+
+Suggested GHC options:
+
+ -O -fvia-C -funbox-strict-fields
+
+To illustrate, here are the times (in seconds) to generate and sum 250
+million random Word32 values, on a laptop with a 2.4GHz Core2 Duo
+P8600 processor, running Fedora 11 and GHC 6.10.3:
+
+ no flags 200+
+ -O 1.249
+ -O -fvia-C 0.991
+
+As the numbers above suggest, compiling without optimisation will
+yield unacceptable performance.
+
+
+Get involved!
+-------------
+
+Please feel welcome to contribute new code or bug fixes. You can
+fetch the source repository from here:
+
+darcs get http://darcs.serpentine.com/mwc-random
+
+
+Authors
+-------
+
+Bryan O'Sullivan <bos@serpentine.com>
@@ -0,0 +1,3 @@
+#!/usr/bin/env runhaskell
+> import Distribution.Simple
+> main = defaultMain
Oops, something went wrong.

0 comments on commit e4a0938

Please sign in to comment.