1 definition module RandomExt
3 // **************************************************************************************************
5 // General utility for random number generation.
7 // This module is actually an extension of the Random module in the 'Object IO Examples:gui utilities'
8 // folder. That module lacked instances of the usual overloaded functions.
10 // **************************************************************************************************
17 nullRandomSeed :: RandomSeed
18 // nullRandomSeed generates a useless RandomSeed (random nullRandomSeed = (0,nullRandomSeed)).
20 getNewRandomSeed:: !*env -> (!RandomSeed, !*env) | TimeEnv env
21 // GetNewRandomSeed generates a useful RandomSeed, using the current time.
23 random :: !RandomSeed -> (!Int, !RandomSeed)
24 // Given a RandomSeed, Random generates a random number and a new RandomSeed.
26 instance toString RandomSeed
27 instance fromString RandomSeed
28 instance == RandomSeed