-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Random shuffle implementation. -- -- Random shuffle implementation, on immutable lists. Based on `perfect -- shuffle' implementation by Oleg Kiselyov, available on -- http:okmij.orgftpHaskell/perfect-shuffle.txt @package random-shuffle @version 0.0.3 -- | http:okmij.orgftpHaskell/perfect-shuffle.txt module System.Random.Shuffle -- | Given a sequence (e1,...en) to shuffle, and a sequence (r1,...r[n-1]) -- of numbers such that r[i] is an independent sample from a uniform -- random distribution [0..n-i], compute the corresponding permutation of -- the input sequence. shuffle :: [a] -> [Int] -> [a] -- | Given a sequence (e1,...en) to shuffle, its length, and a random -- generator, compute the corresponding permutation of the input -- sequence. shuffle' :: RandomGen gen => [a] -> Int -> gen -> [a] -- | shuffle' wrapped in a random monad shuffleM :: MonadRandom m => [a] -> m [a] instance Show a => Show (Tree a)