From dc83b06b33d7aedd3e193828c786e2f7e7bbb9cf Mon Sep 17 00:00:00 2001 From: sof Date: Thu, 13 May 1999 11:00:07 +0000 Subject: [PATCH] [project @ 1999-05-13 11:00:07 by sof] 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 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ghc/lib/std/Random.lhs b/ghc/lib/std/Random.lhs index 784b8ba..3a2f3b0 100644 --- a/ghc/lib/std/Random.lhs +++ b/ghc/lib/std/Random.lhs @@ -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 -- 1.7.10.4