Module Caml.Random
Basic functions
val init : int -> unitInitialize the generator, using the argument as a seed. The same seed will always yield the same sequence of numbers.
val full_init : int array -> unitSame as
Random.initbut takes more data as seed.
val self_init : unit -> unitInitialize the generator with a random seed chosen in a system-dependent way. If
/dev/urandomis available on the host machine, it is used to provide a highly random initial seed. Otherwise, a less random seed is computed from system parameters (current time, process IDs).
val bits : unit -> intReturn 30 random bits in a nonnegative integer.
- before 3.12.0
used a different algorithm (affects all the following functions)
val int : int -> intRandom.int boundreturns a random integer between 0 (inclusive) andbound(exclusive).boundmust be greater than 0 and less than 230.
val int32 : Int32.t -> Int32.tRandom.int32 boundreturns a random integer between 0 (inclusive) andbound(exclusive).boundmust be greater than 0.
val nativeint : Nativeint.t -> Nativeint.tRandom.nativeint boundreturns a random integer between 0 (inclusive) andbound(exclusive).boundmust be greater than 0.
val int64 : Int64.t -> Int64.tRandom.int64 boundreturns a random integer between 0 (inclusive) andbound(exclusive).boundmust be greater than 0.
Advanced functions
module State : sig ... endval get_state : unit -> State.tReturn the current state of the generator used by the basic functions.
val set_state : State.t -> unitSet the state of the generator used by the basic functions.