mit explizitem Zustand des Generators:
randomR :: ( RandomGen g, Random a ) => (a,a) -> g -> (a, g) split :: RandomGen g => g -> (g,g)
randomRIO :: Random a => (a,a) -> IO a