
That's definitely not a message for the bugs list :-) Please have a look at this page: http://www.zvon.org/other/haskell/Outputrandom/getStdRandom_f.html It gives the correct signature for drawInt as you defined it: Int -> Int -> IO Int The signature you gave doesn't work because it specifies a pure function - for the same set of arguments, it must always produce the same result. How many ints do you want to generate? I don't think it is possible to generate an infinite lazy list in this case because this interferes with monad semantics. If you want a fixed number of random ints, try this: drawInts :: Int -> Int -> Int -> IO [Int] drawInts num x y = sequence (replicate num (getStdRandom (randomR (x,y)))) -Stefan Gwoing Yu wrote:
Hi,
I need some assistances in calling random number generator using 6.0.1 haskell compiler. To return a list of random int [Int], I have tried the following:
drawInt :: Int->Int -> [Int] drawInt x y = getStdRandom (randomRs (x,y))
It has a type error. I would appreciate if you know how to fix it.
Thank you in advance.