[Haskell-beginners] System.Random
Thomas Friedrich
info at suud.de
Wed May 27 19:55:05 EDT 2009
Hi everyone,
Using random numbers in Haskell is not entirely trivial (at least, still
not for me) and again I am bagging my head against the Gen-Monad. I'd
like to write a kind of bootstrap function
sample :: Int -> [a] -> [a]
sample n xs = ...
that samples uniformly n elements from the list xs. I am not sure how
to go about this. Would you try something like
sample1 :: StdGen -> Int -> [a] -> [a]
and later use this in an IO Monad, something along the lines of: do {g
<- mkStdGen; return $ sample g n xs}, or would you write it like
sample2 :: Int -> [a] -> Gen [a]
and then use a function from QuickCheck like `generate` to get your samples?
You see, I don't even know how to start thinking about the problem.
If anyone got an idea, I'd be pleased if you could help me.
Cheers,
Thomas
More information about the Beginners
mailing list