1-- | Benchmarking utilities.  For example, functions for generating
2-- random integers.
3module Util.Int where
4
5import System.Random (mkStdGen, randomRs)
6
7-- | Generate a number of uniform random integers in the interval
8-- @[0..upper]@.
9rnd :: Int  -- ^ Upper bound (inclusive)
10    -> Int  -- ^ Number of integers
11    -> [Int]
12rnd upper num = take num $ randomRs (0, upper) $ mkStdGen 1234
13
14-- | Generate a number of uniform random integers in the interval
15-- @[0..upper]@ different from @rnd@.
16rnd' :: Int  -- ^ Upper bound (inclusive)
17     -> Int  -- ^ Number of integers
18     -> [Int]
19rnd' upper num = take num $ randomRs (0, upper) $ mkStdGen 5678
20