Generalize the 'RandomGen' and 'Random' classes
|Reported by:||TomMD||Owned by:|
|Type of failure:||None/Unknown||Test Case:|
|Related Tickets:||Differential Rev(s):|
Description (last modified by igloo)
RandomGen and Random classes assume generators produce Int values. This is non-ideal as many high speed generators produce special values (ex: doubles) or generic values (bit streams / bytestrings) that can be converted directly to my types easier than coercing to Int then to an 'a' via the Random class.
The proposal is to change the classes from/to:
class RandomGen g where --> class RandomGen g v | g -> v where
class Random a where --> class Random a v where
And make needed changes to the classes instances that follow from these.