[Haskell-cafe] Random this! ;-)

michael rice nowgate at yahoo.com
Sun Jul 25 11:39:49 EDT 2010


Hi All,

From: http://en.wikibooks.org/wiki/Haskell/Understanding_monads/State

                           Exercises

   1. Implement a function rollNDiceIO :: Int -> IO [Int] that,
      given an integer, returns a list with that number of pseudo-
      random integers between 1 and 6.


After a lot of learning what not to do, this is the best I could come up with.

rollNDiceIO :: Int -> IO [Int]
rollNDiceIO n = mapM (\x -> randomRIO(1,6)) (replicate n 1)

I know, ugly, but at least I got it to work. What's a better way to generate this list?

Michael




      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100725/8bef9338/attachment.html


More information about the Haskell-Cafe mailing list