MLton MLTONWIKIVERSION

MLtonRandom

Home Index

    signature MLTON_RANDOM =
       sig
          val alphaNumChar: unit -> char
          val alphaNumString: int -> string
          val rand: unit -> word
          val seed: unit -> word option
          val srand: word -> unit
          val useed: unit -> word option
       end

- `alphaNumChar ()`
  returns a random alphanumeric character.

- `alphaNumString n`
  returns a string of length `n` of random alphanumeric characters.

- `rand ()`
  returns the next pseudo-random number.

- `seed ()`
  returns a random word from `/dev/random`. Useful as an arg to `srand`. If `/dev/random` can not be read from, `seed ()` returns `NONE`. A call to `seed` may block until enough random bits are available.

- `srand w`
  sets the seed used by `rand` to `w`.

- `useed ()`
  returns a random word from `/dev/urandom`. Useful as an arg to `srand`. If `/dev/urandom` can not be read from, `useed ()` returns `NONE`. A call to `useed` will never block -- it will instead return lower quality random bits.

Last edited on 2007-08-23 03:45:02 by MatthewFluet.