[project @ 1999-05-13 11:00:07 by sof]
authorsof <unknown>
Thu, 13 May 1999 11:00:07 +0000 (11:00 +0000)
committersof <unknown>
Thu, 13 May 1999 11:00:07 +0000 (11:00 +0000)
randomIvalInteger: The difference between '1' and 'l' is rather slight
at the level of pixels. At the level of Haskell programs however, the
difference is rather more pronounced :)

ghc/lib/std/Random.lhs

index 784b8ba..3a2f3b0 100644 (file)
@@ -172,7 +172,7 @@ mkStdRNG o = do
 randomIvalInteger :: (RandomGen g, Num a) => (Integer, Integer) -> g -> (a, g)
 randomIvalInteger (l,h) rng
  | l > h     = randomIvalInteger (h,l) rng
- | otherwise = case (f n 1 rng) of (v, rng') -> (fromInteger (l + v `mod` (k+1)), rng')
+ | otherwise = case (f n 1 rng) of (v, rng') -> (fromInteger (l + v `mod` k), rng')
      where
        k = h - l + 1
        b = 2147483561