random
random copied to clipboard
Random number library
Implementation of a general seeding interface. Resolves #123
Up until `random-1.1` a barebone (and potentially brittle) way to serialise and deserialise a `StdGen` would have been to use `show` and `read`, however `random-1.2.0` removed `Read` (for good reasons)...
Fixes #87 @treeowl is this something you had in mind for #87?
Initial version of `shuffleListM` was introduced in #140 Current implementation is very simple and suboptimal, as pointed out in this [comment](https://github.com/haskell/random/pull/140#issuecomment-1658394369) We need some basic array support with mutation in...
As it was discussed in https://github.com/haskell/random/issues/156#issuecomment-1889812810 and https://github.com/haskell/random/issues/156#issuecomment-1889868874 we should split out the core functionality of `random` out into a new `random-core` package, which would be the direct dependency of...
```haskell instance Random DiffTime where random :: (RandomGen g) => g -> (DiffTime, g) random g = let (i, g') = random g in (picosecondsToDiffTime $ fromIntegral (i :: Integer),...
What I expect the signatures of these utilities to be: 1. `random-fu` implements the random ekement utility as `randomElement :: [a] -> RVar a`, though it doesn't have to be...
Few of us have mentioned that `Random` is no longer useful, because `Uniform` and `UniformRange` was introduced as a more correct interface. `Complex` is an example of a type where...
We certainly want generator application to modify the *generator* strictly, but it's not always reasonable to produce the result strictly. I think `applyRandomGenM` itself probably *shouldn't* force the result, but...
One more type from base that is missing some instances. I think I can see a lawful implementation for `HasResolution e => UniformRange (Fixed e)` instance. Also considering that we...