Creates a generator that produces values uniformly distributed across the range
Creates a generator that produces values uniformly distributed across the range
The generated values are inclusive of both min and max.
Creates a generator that always returns the same value
Creates a new generator that applies the function to the output of the first generator and flattens the result
Runs the given generator and returns the generated value
Creates a new generator that applies the function to the output of the first generator
Creates a generator that uniformly selects from a list of items
Returns the same generator but with a wider type parameter
Flattens a nested generator into a single generator
Monads that represent a random value generator