From 21558662f2eecb17e71beadf3cf1c0809125f811 Mon Sep 17 00:00:00 2001 From: Ross Paterson Date: Mon, 30 Oct 2006 23:08:42 +0000 Subject: [PATCH] minor clarification of RandomGen doc --- System/Random.hs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/System/Random.hs b/System/Random.hs index 8bf81f6..d6517b1 100644 --- a/System/Random.hs +++ b/System/Random.hs @@ -91,6 +91,8 @@ getClockTime = do t <- readtime nullPtr; return (TOD (toInteger t) ()) -- | The class 'RandomGen' provides a common interface to random number -- generators. +-- +-- Minimal complete definition: 'next' and 'split'. class RandomGen g where @@ -114,7 +116,7 @@ class RandomGen g where -- -- * If @(a,b) = 'genRange' g@, then @a < b@. -- - -- * 'genRange' is not strict. + -- * 'genRange' always returns a pair of defined 'Int's. -- -- The second condition ensures that 'genRange' cannot examine its -- argument, and hence the value it returns can be determined only by the @@ -122,6 +124,8 @@ class RandomGen g where -- a single call to 'genRange' to establish a generator's range, without -- being concerned that the generator returned by (say) 'next' might have -- a different range to the generator passed to 'next'. + -- + -- The default definition spans the full range of 'Int'. genRange :: g -> (Int,Int) -- default method -- 1.7.10.4