The random-state Reference Manual

This is the random-state Reference Manual, version 1.0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:44:13 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 random-state

Portable random number generation.

Author

Yukari Hafner <>

Home Page

https://Shinmera.github.io/random-state/

Source Control

(GIT https://github.com/Shinmera/random-state.git)

Bug Tracker

https://github.com/Shinmera/random-state/issues

License

zlib

Version

1.0.1

Dependency

documentation-utils (system).

Source

random-state.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 random-state/random-state.asd

Source

random-state.asd.

Parent Component

random-state (system).

ASDF Systems

random-state.


3.1.2 random-state/package.lisp

Source

random-state.asd.

Parent Component

random-state (system).

Packages

random-state.


3.1.3 random-state/toolkit.lisp

Dependency

package.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.4 random-state/generator.lisp

Dependency

toolkit.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.5 random-state/protocol.lisp

Dependency

generator.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface

3.1.6 random-state/linear-congruence.lisp

Dependency

protocol.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.7 random-state/mersenne-twister.lisp

Dependency

linear-congruence.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.8 random-state/middle-square.lisp

Dependency

mersenne-twister.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.9 random-state/pcg.lisp

Dependency

middle-square.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.10 random-state/rc4.lisp

Dependency

pcg.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.11 random-state/tt800.lisp

Dependency

rc4.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.12 random-state/kiss.lisp

Dependency

tt800.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.13 random-state/squirrel.lisp

Dependency

kiss.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.14 random-state/adler32.lisp

Dependency

squirrel.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.15 random-state/murmurhash.lisp

Dependency

adler32.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.16 random-state/cityhash.lisp

Dependency

murmurhash.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.17 random-state/xorshift.lisp

Dependency

cityhash.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

3.1.18 random-state/implementation.lisp

Dependency

xorshift.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).

Public Interface
Internals

%make-generator (method).


3.1.19 random-state/documentation.lisp

Dependency

implementation.lisp (file).

Source

random-state.asd.

Parent Component

random-state (system).


4 Packages

Packages are listed by definition order.


4.1 random-state

Source

package.lisp.

Nickname

org.shirakumo.random-state

Use List

common-lisp.

Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Special variables

Special Variable: *generator*

The default random number generator used by RANDOM.

See RANDOM

Package

random-state.

Source

protocol.lisp.


5.1.2 Macros

Macro: define-generator (name bits-per-byte super slots &body bodies)
Package

random-state.

Source

generator.lisp.


5.1.3 Compiler macros

Compiler Macro: bits-per-byte (generator)
Package

random-state.

Source

generator.lisp.

Compiler Macro: copy (generator)
Package

random-state.

Source

generator.lisp.

Compiler Macro: ensure-generator (generator-ish)
Package

random-state.

Source

generator.lisp.

Compiler Macro: global-generator (name)
Package

random-state.

Source

generator.lisp.

Compiler Macro: next-byte (generator)
Package

random-state.

Source

generator.lisp.

Compiler Macro: random-float (generator from to)
Package

random-state.

Source

protocol.lisp.

Compiler Macro: random-unit (generator &optional type)
Package

random-state.

Source

protocol.lisp.

Compiler Macro: reseed (generator new-seed)
Package

random-state.

Source

generator.lisp.

Compiler Macro: rewind (hash-generator &optional by)
Package

random-state.

Source

generator.lisp.

Compiler Macro: seed (generator)
Package

random-state.

Source

generator.lisp.


5.1.4 Ordinary functions

Function: draw (n &optional generator)

Returns a vector with N random samples in [0,1[.

See ENSURE-GENERATOR
See RANDOM-UNIT

Package

random-state.

Source

protocol.lisp.

Function: ensure-generator (generator-ish)

Ensures the argument is an object usable for random number generation.

See GLOBAL-GENERATOR
See GENERATOR

Package

random-state.

Source

generator.lisp.

Function: global-generator (name)

Returns a global instance of a generator.

You may also SETF this place to name specific generators of your own.

See MAKE-GENERATOR

Package

random-state.

Source

generator.lisp.

Function: (setf global-generator) (name)
Package

random-state.

Source

generator.lisp.

Function: histogram (rng bins &key samples width stream)

Compute a histogram from the given sample vector.

This will collect the samples into N bins, where the value of the bin is the contribution of the samples in the bin towards all samples.

See PRINT-HISTOGRAM
See DRAW

Package

random-state.

Source

toolkit.lisp.

Function: hopefully-sufficiently-random-seed ()

Attempts to find a sufficiently random seed.

On Unix, this reads 64 bits from /dev/urandom
On Windows+SBCL, this reads 64 bits from SB-WIN32:CRYPT-GEN-RANDOM Otherwise it uses an XOR of GET-INTERNAL-REAL-TIME and GET-UNIVERSAL-TIME.

Package

random-state.

Source

toolkit.lisp.

Reader: index (instance)

Accesses the index of the hash-generator.

The index must be an (unsigned-byte 64).
The index is advanced for each call to NEXT-BYTE.

See HASH-GENERATOR

Package

random-state.

Source

generator.lisp.

Target Slot

index.

Writer: (setf index) (instance)
Package

random-state.

Source

generator.lisp.

Target Slot

index.

Function: list-generator-types ()

Lists the types of generators supported by the library.

You may use any of these types to call MAKE-GENERATOR with.

See MAKE-GENERATOR

Package

random-state.

Source

generator.lisp.

Function: make-generator (type &optional seed &rest initargs)

Creates a new generator of the given type.

You may pass an optional seed to initialise the generator with. If no seed is specified, each constructed generator of the same type will return the same sequence of numbers.

See RESEED
See GENERATOR

Package

random-state.

Source

generator.lisp.

Function: print-histogram (histogram &key stream width)

Display the histogram vector in a user-friendly manner.

Prints a visual representation of the deviation of each bin from the ideal uniform distribution as well as the cumulative deviation of all bins.

See HISTOGRAM

Package

random-state.

Source

toolkit.lisp.

Function: random (max &optional generator)

Returns a number in [0, MAX[.

This is a drop-in replacement for CL:RANDOM.
The returned type is the same as MAX, where MAX must be an INTEGER or a FLOAT greater than zero. The returned number must be smaller than MAX.

GENERATOR may be anything accepted by ENSURE-GENERATOR.

See RANDOM-INT
See RANDOM-FLOAT
See ENSURE-GENERATOR

Package

random-state.

Source

protocol.lisp.

Function: random-1d (generator index &optional seed)

Returns a byte for the given index and seed.

This is only usable with HASH-GENERATOR types. Does *NOT* advance the generator’s index.

See HASH-GENERATOR
See NEXT-BYTE

Package

random-state.

Source

protocol.lisp.

Function: random-2d (generator x y &optional seed)

Returns a byte for the given location and seed.

This is only usable with HASH-GENERATOR types. Does *NOT* advance the generator’s index.

See HASH-GENERATOR
See NEXT-BYTE

Package

random-state.

Source

protocol.lisp.

Function: random-3d (generator x y z &optional seed)

Returns a byte for the given location and seed.

This is only usable with HASH-GENERATOR types. Does *NOT* advance the generator’s index.

See HASH-GENERATOR
See NEXT-BYTE

Package

random-state.

Source

protocol.lisp.

Function: random-byte (generator)

Alias for NEXT-BYTE.

See GENERATOR See NEXT-BYTE

Package

random-state.

Source

protocol.lisp.

Function: random-bytes (generator bits)

Returns an (UNSIGNED-BYTE BITS) sized random number.

May advance the generator more than once.

See GENERATOR
See NEXT-BYTE

Package

random-state.

Source

protocol.lisp.

Function: random-float (generator from to)

Returns a random float in [FROM, TO].

The returned float is of the same type as whatever type is larger between FROM and TO.

See GENERATOR
See RANDOM-UNIT

Package

random-state.

Source

protocol.lisp.

Function: random-int (generator from to)

Returns a random integer in [FROM, TO].

See GENERATOR
See RANDOM-BYTES

Package

random-state.

Source

protocol.lisp.

Function: random-sequence (generator sequence &key start end)

Fills SEQUENCE between START and END with random numbers.

Note: it is up to you to ensure that SEQUENCE is capable of holding numbers returned by the generator’s NEXT-BYTE, and that doing so makes sense. As in, do not fill a vector with element-type (unsigned-byte 8) with a generator whose BITS-PER-BYTE is 32 or vice-versa.

Equivalent to:

(map-into sequence (lambda () (next-byte generator)))

See GENERATOR
See NEXT-BYTE

Package

random-state.

Source

protocol.lisp.

Function: random-unit (generator &optional type)

Returns a random float in [0, 1].

The returned float is of the type specified in TYPE.

see GENERATOR
See RANDOM-BYTES

Package

random-state.

Source

protocol.lisp.


5.1.5 Generic functions

Generic Function: bits-per-byte (generator)

Returns the number of bits of randomness returned by the generator for each NEXT-BYTE call.

See NEXT-BYTE
See GENERATOR

Package

random-state.

Source

generator.lisp.

Methods
Method: bits-per-byte ((generator random-state))
Source

implementation.lisp.

Method: bits-per-byte ((generator xoroshiro-128**))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoroshiro-128++))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoroshiro-128+))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoroshiro-64**))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoroshiro-64*))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoshiro-256+))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoshiro-256++))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoshiro-256**))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoshiro-128+))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoshiro-128++))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xoshiro-128**))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorshift-128+))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorshift-1024*))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorshift-64*))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorwow))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorshift-128))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorshift-64))
Source

xorshift.lisp.

Method: bits-per-byte ((generator xorshift-32))
Source

xorshift.lisp.

Method: bits-per-byte ((generator cityhash-64))
Source

cityhash.lisp.

Method: bits-per-byte ((generator murmurhash3))
Source

murmurhash.lisp.

Method: bits-per-byte ((generator adler32))
Source

adler32.lisp.

Method: bits-per-byte ((generator squirrel))
Source

squirrel.lisp.

Method: bits-per-byte ((generator kiss11))
Source

kiss.lisp.

Method: bits-per-byte ((generator tt800))
Source

tt800.lisp.

Method: bits-per-byte ((generator rc4))
Source

rc4.lisp.

Method: bits-per-byte ((generator pcg))
Source

pcg.lisp.

Method: bits-per-byte ((generator middle-square))
Source

middle-square.lisp.

Method: bits-per-byte ((generator mersenne-twister-64))
Source

mersenne-twister.lisp.

Method: bits-per-byte ((generator mersenne-twister-32))
Source

mersenne-twister.lisp.

Method: bits-per-byte ((generator linear-congruence))
Source

linear-congruence.lisp.

Method: bits-per-byte ((generator symbol))
Generic Function: copy (generator)

Creates a fresh copy of the given generator.

This copy will return an identical sequence of bytes as the
original. Meaning, the following invariant holds true:

(loop with copy = (copy generator) always (= (next-byte generator) (next-byte copy)))

See GENERATOR

Package

random-state.

Source

generator.lisp.

Methods
Method: copy ((generator random-state))
Source

implementation.lisp.

Method: copy ((generator xoroshiro-128**))
Source

xorshift.lisp.

Method: copy ((generator xoroshiro-128++))
Source

xorshift.lisp.

Method: copy ((generator xoroshiro-128+))
Source

xorshift.lisp.

Method: copy ((generator xoroshiro-64**))
Source

xorshift.lisp.

Method: copy ((generator xoroshiro-64*))
Source

xorshift.lisp.

Method: copy ((generator xoshiro-256+))
Source

xorshift.lisp.

Method: copy ((generator xoshiro-256++))
Source

xorshift.lisp.

Method: copy ((generator xoshiro-256**))
Source

xorshift.lisp.

Method: copy ((generator xoshiro-128+))
Source

xorshift.lisp.

Method: copy ((generator xoshiro-128++))
Source

xorshift.lisp.

Method: copy ((generator xoshiro-128**))
Source

xorshift.lisp.

Method: copy ((generator xorshift-128+))
Source

xorshift.lisp.

Method: copy ((generator xorshift-1024*))
Source

xorshift.lisp.

Method: copy ((generator xorshift-64*))
Source

xorshift.lisp.

Method: copy ((generator xorwow))
Source

xorshift.lisp.

Method: copy ((generator xorshift-128))
Source

xorshift.lisp.

Method: copy ((generator xorshift-64))
Source

xorshift.lisp.

Method: copy ((generator xorshift-32))
Source

xorshift.lisp.

Method: copy ((generator cityhash-64))
Source

cityhash.lisp.

Method: copy ((generator murmurhash3))
Source

murmurhash.lisp.

Method: copy ((generator adler32))
Source

adler32.lisp.

Method: copy ((generator squirrel))
Source

squirrel.lisp.

Method: copy ((generator kiss11))
Source

kiss.lisp.

Method: copy ((generator tt800))
Source

tt800.lisp.

Method: copy ((generator rc4))
Source

rc4.lisp.

Method: copy ((generator pcg))
Source

pcg.lisp.

Method: copy ((generator middle-square))
Source

middle-square.lisp.

Method: copy ((generator mersenne-twister-64))
Source

mersenne-twister.lisp.

Method: copy ((generator mersenne-twister-32))
Source

mersenne-twister.lisp.

Method: copy ((generator linear-congruence))
Source

linear-congruence.lisp.

Method: copy ((generator symbol))
Method: copy ((thing array))
Source

toolkit.lisp.

Method: copy ((thing number))
Source

toolkit.lisp.

Generic Function: next-byte (generator)

Returns the next byte (not octet) of random state.

The returned integer must be in the range of
[ 0, 1 << BITS-PER-BYTE GENERATOR [

See RANDOM-INT
See RANDOM-BYTES
See GENERATOR

Package

random-state.

Source

generator.lisp.

Methods
Method: next-byte ((generator random-state))
Source

implementation.lisp.

Method: next-byte ((generator xoroshiro-128**))
Source

xorshift.lisp.

Method: next-byte ((generator xoroshiro-128++))
Source

xorshift.lisp.

Method: next-byte ((generator xoroshiro-128+))
Source

xorshift.lisp.

Method: next-byte ((generator xoroshiro-64**))
Source

xorshift.lisp.

Method: next-byte ((generator xoroshiro-64*))
Source

xorshift.lisp.

Method: next-byte ((generator xoshiro-256+))
Source

xorshift.lisp.

Method: next-byte ((generator xoshiro-256++))
Source

xorshift.lisp.

Method: next-byte ((generator xoshiro-256**))
Source

xorshift.lisp.

Method: next-byte ((generator xoshiro-128+))
Source

xorshift.lisp.

Method: next-byte ((generator xoshiro-128++))
Source

xorshift.lisp.

Method: next-byte ((generator xoshiro-128**))
Source

xorshift.lisp.

Method: next-byte ((generator xorshift-128+))
Source

xorshift.lisp.

Method: next-byte ((generator xorshift-1024*))
Source

xorshift.lisp.

Method: next-byte ((generator xorshift-64*))
Source

xorshift.lisp.

Method: next-byte ((generator xorwow))
Source

xorshift.lisp.

Method: next-byte ((generator xorshift-128))
Source

xorshift.lisp.

Method: next-byte ((generator xorshift-64))
Source

xorshift.lisp.

Method: next-byte ((generator xorshift-32))
Source

xorshift.lisp.

Method: next-byte ((generator cityhash-64))
Source

cityhash.lisp.

Method: next-byte ((generator murmurhash3))
Source

murmurhash.lisp.

Method: next-byte ((generator adler32))
Source

adler32.lisp.

Method: next-byte ((generator squirrel))
Source

squirrel.lisp.

Method: next-byte ((generator kiss11))
Source

kiss.lisp.

Method: next-byte ((generator tt800))
Source

tt800.lisp.

Method: next-byte ((generator rc4))
Source

rc4.lisp.

Method: next-byte ((generator pcg))
Source

pcg.lisp.

Method: next-byte ((generator middle-square))
Source

middle-square.lisp.

Method: next-byte ((generator mersenne-twister-64))
Source

mersenne-twister.lisp.

Method: next-byte ((generator mersenne-twister-32))
Source

mersenne-twister.lisp.

Method: next-byte ((generator linear-congruence))
Source

linear-congruence.lisp.

Method: next-byte ((generator symbol))
Generic Function: reseed (generator new-seed)

Reset the RNG and seed it with the given seed number.

If T is passed for the new seed, a random seed as determined by HOPEFULLY-SUFFICIENTLY-RANDOM-SEED is used.

See HOPEFULLY-SUFFICIENTLY-RANDOM-SEED
See GENERATOR

Package

random-state.

Source

generator.lisp.

Methods
Method: reseed ((generator random-state) seed)
Source

implementation.lisp.

Method: reseed ((generator xoroshiro-128**) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoroshiro-128++) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoroshiro-128+) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoroshiro-64**) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoroshiro-64*) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoshiro-256+) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoshiro-256++) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoshiro-256**) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoshiro-128+) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoshiro-128++) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xoshiro-128**) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorshift-128+) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorshift-1024*) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorshift-64*) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorwow) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorshift-128) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorshift-64) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator xorshift-32) (new-seed integer))
Source

xorshift.lisp.

Method: reseed ((generator kiss11) (new-seed integer))
Source

kiss.lisp.

Method: reseed ((generator tt800) (new-seed integer))
Source

tt800.lisp.

Method: reseed ((generator rc4) (new-seed integer))
Source

rc4.lisp.

Method: reseed ((generator pcg) (new-seed integer))
Source

pcg.lisp.

Method: reseed ((generator middle-square) (new-seed integer))
Source

middle-square.lisp.

Method: reseed ((generator mersenne-twister-64) (new-seed integer))
Source

mersenne-twister.lisp.

Method: reseed ((generator mersenne-twister-32) (new-seed integer))
Source

mersenne-twister.lisp.

Method: reseed ((generator linear-congruence) (new-seed integer))
Source

linear-congruence.lisp.

Method: reseed ((generator hash-generator) (seed integer))
Method: reseed ((generator generator) (new-seed (eql t)))
Method: reseed ((generator symbol) new-seed)
Generic Function: rewind (hash-generator &optional by)

Rewind the hash-generator by BY numbers.

The following invariant holds for any N:

(= (next-byte generator) (progn (rewind generator N) (loop repeat (1- N) (next-byte generator)) (next-byte generator)))

See HASH-GENERATOR

Package

random-state.

Source

generator.lisp.

Methods
Method: rewind ((generator hash-generator) &optional by)
Method: rewind ((hash-generator symbol) &optional by)
Generic Function: seed (generator)

Returns the seed that was used to initialise the generator.

See GENERATOR

Package

random-state.

Source

generator.lisp.

Methods
Method: seed ((generator random-state))
Source

implementation.lisp.

Method: seed ((generator generator))
Method: seed ((generator symbol))

5.1.6 Standalone methods

Method: make-load-form ((object generator) &optional env)
Source

generator.lisp.

Method: print-object ((generator generator) stream)
Source

generator.lisp.


5.1.7 Structures

Structure: adler32
Package

random-state.

Source

adler32.lisp.

Direct superclasses

hash-generator.

Direct methods
Structure: cityhash-64
Package

random-state.

Source

cityhash.lisp.

Direct superclasses

hash-generator.

Direct methods
Structure: generator

General class for any random number generator.

See LIST-GENERATOR-TYPES
See SEED
See RESEED
See NEXT-BYTE
See BITS-PER-BYTE
See COPY
See MAKE-GENERATOR
See STATEFUL-GENERATOR
See HASH-GENERATOR

Package

random-state.

Source

generator.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: %seed
Type

(unsigned-byte 64)

Initform

0

Readers

%seed.

Writers

(setf %seed).

Structure: hash-generator

Superclass for all generators that rely on a hashing function to generate numbers.

These generators are special in that numbers for any index can be
generated, so they can be rewound or arbitrarily stepped in their
sequence.

See GENERATOR
See INDEX
See REWIND

Package

random-state.

Source

generator.lisp.

Direct superclasses

generator.

Direct subclasses
Direct methods
Direct slots
Slot: index
Type

(unsigned-byte 64)

Initform

0

Readers

index.

Writers

(setf index).

Structure: kiss11
Package

random-state.

Source

kiss.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: q
Type

(simple-array (unsigned-byte 32) (4194304))

Initform

(random-state::32bit-seed-array 4194304 0)

Readers

kiss11-q.

Writers

(setf kiss11-q).

Slot: carry
Type

(unsigned-byte 32)

Initform

0

Readers

kiss11-carry.

Writers

(setf kiss11-carry).

Slot: j
Type

(unsigned-byte 32)

Initform

4194303

Readers

kiss11-j.

Writers

(setf kiss11-j).

Slot: cng
Type

(unsigned-byte 32)

Initform

123456789

Readers

kiss11-cng.

Writers

(setf kiss11-cng).

Slot: xs
Type

(unsigned-byte 32)

Initform

362436069

Readers

kiss11-xs.

Writers

(setf kiss11-xs).

Structure: linear-congruence

A very simple random number generator based on linear congruence.

See https://en.wikipedia.org/wiki/Linear_congruential_generator

Package

random-state.

Source

linear-congruence.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: state
Type

(unsigned-byte 64)

Initform

0

Readers

linear-congruence-state.

Writers

(setf linear-congruence-state).

Slot: multiplier
Type

(unsigned-byte 64)

Initform

6364136223846793005

Readers

linear-congruence-multiplier.

Writers

(setf linear-congruence-multiplier).

Slot: increment
Type

(unsigned-byte 64)

Initform

1442695040888963407

Readers

linear-congruence-increment.

Writers

(setf linear-congruence-increment).

Structure: mersenne-twister-32

The de-facto standard random number generator algorithm.

See https://en.wikipedia.org/wiki/Mersenne_Twister See http://www.acclab.helsinki.fi/~knordlun/mc/mt19937.c

Package

random-state.

Source

mersenne-twister.lisp.

Direct superclasses

mersenne-twister.

Direct methods
Direct slots
Slot: index
Type

(unsigned-byte 64)

Initform

624

Readers

mersenne-twister-32-index.

Writers

(setf mersenne-twister-32-index).

Slot: upper
Type

(unsigned-byte 32)

Initform

2147483648

Readers

mersenne-twister-32-upper.

Writers

(setf mersenne-twister-32-upper).

Slot: lower
Type

(unsigned-byte 32)

Initform

2147483647

Readers

mersenne-twister-32-lower.

Writers

(setf mersenne-twister-32-lower).

Slot: magic
Type

(simple-array (unsigned-byte 32) (2))

Initform

(random-state::barr 32 0 2567483615)

Readers

mersenne-twister-32-magic.

Writers

(setf mersenne-twister-32-magic).

Slot: matrix
Type

(simple-array (unsigned-byte 32) (624))

Initform

(make-array 624 :element-type (sb-int:quasiquote (unsigned-byte 32)))

Readers

mersenne-twister-32-matrix.

Writers

(setf mersenne-twister-32-matrix).

Structure: mersenne-twister-64

A 64 bit variant of the Mersenne Twister algorithm.

See MERSENNE-TWISTER-32
See http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/VERSIONS/C-LANG/mt19937-64.c

Package

random-state.

Source

mersenne-twister.lisp.

Direct superclasses

mersenne-twister.

Direct methods
Direct slots
Slot: index
Type

(unsigned-byte 64)

Initform

312

Readers

mersenne-twister-64-index.

Writers

(setf mersenne-twister-64-index).

Slot: upper
Type

(unsigned-byte 64)

Initform

18446744071562067968

Readers

mersenne-twister-64-upper.

Writers

(setf mersenne-twister-64-upper).

Slot: lower
Type

(unsigned-byte 64)

Initform

2147483647

Readers

mersenne-twister-64-lower.

Writers

(setf mersenne-twister-64-lower).

Slot: magic
Type

(simple-array (unsigned-byte 64) (2))

Initform

(random-state::barr 64 0 13043109905998158313)

Readers

mersenne-twister-64-magic.

Writers

(setf mersenne-twister-64-magic).

Slot: matrix
Type

(simple-array (unsigned-byte 64) (312))

Initform

(make-array 312 :element-type (sb-int:quasiquote (unsigned-byte 64)))

Readers

mersenne-twister-64-matrix.

Writers

(setf mersenne-twister-64-matrix).

Structure: middle-square

An incredibly primitive, and basically in practise useless, random number algorithm.

See https://en.wikipedia.org/wiki/Middle-square_method

Package

random-state.

Source

middle-square.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: bits
Initform

64

Readers

middle-square-bits.

Writers

(setf middle-square-bits).

Slot: state
Initform

0

Readers

middle-square-state.

Writers

(setf middle-square-state).

Structure: murmurhash3
Package

random-state.

Source

murmurhash.lisp.

Direct superclasses

hash-generator.

Direct methods
Structure: pcg

An adaptation of the PCG rng.

See http://www.pcg-random.org

Package

random-state.

Source

pcg.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: state
Type

(unsigned-byte 64)

Initform

9600629759793949339

Readers

pcg-state.

Writers

(setf pcg-state).

Slot: inc
Type

(unsigned-byte 64)

Initform

15726070495360670683

Readers

pcg-inc.

Writers

(setf pcg-inc).

Structure: rc4

The RC4 cryptographic random number generator.

See https://en.wikipedia.org/wiki/RC4

Package

random-state.

Source

rc4.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: index1
Type

(unsigned-byte 8)

Initform

0

Readers

rc4-index1.

Writers

(setf rc4-index1).

Slot: index2
Type

(unsigned-byte 8)

Initform

0

Readers

rc4-index2.

Writers

(setf rc4-index2).

Slot: state
Type

(simple-array (unsigned-byte 8) (256))

Initform

(make-array 256 :element-type (quote (unsigned-byte 8)))

Readers

rc4-state.

Writers

(setf rc4-state).

Structure: squirrel

An adaptation of the "squirrel hash v3".

See https://www.youtube.com/watch?v=LWFzPP8ZbdU

Package

random-state.

Source

squirrel.lisp.

Direct superclasses

hash-generator.

Direct methods
Structure: stateful-generator

Superclass for all generators that rely on state to produce random numbers.

See GENERATOR

Package

random-state.

Source

generator.lisp.

Direct superclasses

generator.

Direct subclasses
Direct methods

%make-generator.

Structure: tt800

The predecessor to the Mersenne Twister algorithm.

See http://random.mat.sbg.ac.at/publics/ftp/pub/data/tt800.c

Package

random-state.

Source

tt800.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: magic
Type

(simple-array (unsigned-byte 32) (2))

Initform

(random-state::barr 32 0 2394935336)

Readers

tt800-magic.

Writers

(setf tt800-magic).

Slot: n
Type

(unsigned-byte 8)

Initform

25

Readers

tt800-n.

Writers

(setf tt800-n).

Slot: m
Type

(unsigned-byte 8)

Initform

7

Readers

tt800-m.

Writers

(setf tt800-m).

Slot: index
Type

(unsigned-byte 64)

Initform

0

Readers

tt800-index.

Writers

(setf tt800-index).

Slot: matrix
Type

(simple-array (unsigned-byte 32) (25))

Initform

(make-array 25 :element-type (sb-int:quasiquote (unsigned-byte 32)))

Readers

tt800-matrix.

Writers

(setf tt800-matrix).

Structure: xorshift-1024*

Sixteen 64-bit word state variation of XORSHIFT-64*.

See XORSHIFT-64*

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts 31 -11 30)

Readers

xorshift-1024*-xorshifts.

Writers

(setf xorshift-1024*-xorshifts).

Slot: index
Type

(unsigned-byte 4)

Initform

0

Readers

xorshift-1024*-index.

Writers

(setf xorshift-1024*-index).

Slot: magic
Type

(unsigned-byte 64)

Initform

1181783497276652981

Readers

xorshift-1024*-magic.

Writers

(setf xorshift-1024*-magic).

Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (16))

Initform

(make-array 16 :element-type (quote (unsigned-byte 64)))

Readers

xorshift-1024*-values.

Writers

(setf xorshift-1024*-values).

Structure: xorshift-128

The four times 32-bit word state variant of the Xorshift algorithm.

See XORSHIFT-32

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts 11 -8 -19)

Readers

xorshift-128-xorshifts.

Writers

(setf xorshift-128-xorshifts).

Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 32)))

Readers

xorshift-128-values.

Writers

(setf xorshift-128-values).

Structure: xorshift-128+

Non-linear double 64-bit state variant of XORSHIFT-64 that’s currently the standard on modern browsers’ JavaScript engines.

See XORSHIFT-64
See https://en.wikipedia.org/wiki/Xorshift#xorshift+
See https://v8.dev/blog/math-random

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts 23 -18 -5)

Readers

xorshift-128+-xorshifts.

Writers

(setf xorshift-128+-xorshifts).

Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (2))

Initform

(make-array 2 :element-type (quote (unsigned-byte 64)))

Readers

xorshift-128+-values.

Writers

(setf xorshift-128+-values).

Structure: xorshift-32

Linear 32-bit word state shift-register generator.

See https://en.wikipedia.org/wiki/Xorshift
See https://www.jstatsoft.org/article/view/v008i14

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts 13 -17 5)

Readers

xorshift-32-xorshifts.

Writers

(setf xorshift-32-xorshifts).

Slot: value
Type

(unsigned-byte 32)

Initform

0

Readers

xorshift-32-value.

Writers

(setf xorshift-32-value).

Structure: xorshift-64

The 64-bit variant of the Xorshift algorithm..

See XORSHIFT-32

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts 13 -7 17)

Readers

xorshift-64-xorshifts.

Writers

(setf xorshift-64-xorshifts).

Slot: value
Type

(unsigned-byte 64)

Initform

0

Readers

xorshift-64-value.

Writers

(setf xorshift-64-value).

Structure: xorshift-64*

Non-linear variation of XORSHIFT-64 by adding a modulo multiplier.

See XORSHIFT-64
See https://en.wikipedia.org/wiki/Xorshift#xorshift*

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts -12 25 -27)

Readers

xorshift-64*-xorshifts.

Writers

(setf xorshift-64*-xorshifts).

Slot: value
Type

(unsigned-byte 64)

Initform

0

Readers

xorshift-64*-value.

Writers

(setf xorshift-64*-value).

Slot: magic
Type

(unsigned-byte 64)

Initform

2685821657736338717

Readers

xorshift-64*-magic.

Writers

(setf xorshift-64*-magic).

Structure: xorwow

Non-linear five times 32-bit word state shift-register generator.

See XORSHIFT-128
See https://en.wikipedia.org/wiki/Xorshift#xorwow

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

xorshift-generator.

Direct methods
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(random-state::xorshifts -2 1 4)

Readers

xorwow-xorshifts.

Writers

(setf xorwow-xorshifts).

Slot: counter
Type

(unsigned-byte 32)

Initform

0

Readers

xorwow-counter.

Writers

(setf xorwow-counter).

Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (5))

Initform

(make-array 5 :element-type (quote (unsigned-byte 32)))

Readers

xorwow-values.

Writers

(setf xorwow-values).

Structure: xoshiro-128**

32-bit variant of XOSHIRO-256**.

See XOSHIRO-256**
See https://prng.di.unimi.it/xoshiro128starstar.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 32)))

Readers

xoshiro-128**-values.

Writers

(setf xoshiro-128**-values).

Structure: xoshiro-128+

32-bit variant of XOSHIRO-256+.

See XOSHIRO-256+
See https://prng.di.unimi.it/xoshiro128plus.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 32)))

Readers

xoshiro-128+-values.

Writers

(setf xoshiro-128+-values).

Structure: xoshiro-256**

Non-linear rotating general-purpose 64-bit number algorithm.

See https://prng.di.unimi.it/
See https://prng.di.unimi.it/xoshiro256starstar.c
See https://en.wikipedia.org/wiki/Xorshift#xoshiro

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 64)))

Readers

xoshiro-256**-values.

Writers

(setf xoshiro-256**-values).

Structure: xoshiro-256+

Slightly faster variant of XOSHIRO-256++ meant solely for generating 64-bit floating-point numbers by extracting the upper 53-bits due to the linearity of the lower bits.

See XOSHIRO-256++
See https://prng.di.unimi.it/xoshiro256plus.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 64)))

Readers

xoshiro-256+-values.

Writers

(setf xoshiro-256+-values).


5.2 Internals


5.2.1 Special variables

Special Variable: *generator-types*
Package

random-state.

Source

generator.lisp.

Special Variable: *generators*
Package

random-state.

Source

generator.lisp.


5.2.2 Macros

Macro: %inner-mersenne-twister (bytes n m upper lower matrix magic &rest shiftops)
Package

random-state.

Source

mersenne-twister.lisp.

Macro: %inner-xoshiro (bits value values)
Package

random-state.

Source

xorshift.lisp.

Macro: %xorshift (bits place &optional value)
Package

random-state.

Source

xorshift.lisp.

Macro: define-generator-fun (name (gen &rest args))
Package

random-state.

Source

generator.lisp.

Macro: incfmod (place mod &optional delta)
Package

random-state.

Source

toolkit.lisp.

Macro: update (bits place op &rest args)
Package

random-state.

Source

toolkit.lisp.


5.2.3 Compiler macros

Compiler Macro: fit-bits (bits x)
Package

random-state.

Source

toolkit.lisp.

Compiler Macro: hash (hash-generator index seed)
Package

random-state.

Source

generator.lisp.


5.2.4 Ordinary functions

Reader: %seed (instance)
Writer: (setf %seed) (instance)
Package

random-state.

Source

generator.lisp.

Target Slot

%seed.

Function: 32bit-seed-array (size seed)
Package

random-state.

Source

toolkit.lisp.

Function: 64bit-seed-array (size seed)
Package

random-state.

Source

toolkit.lisp.

Function: adler32-%seed (instance)
Package

random-state.

Source

adler32.lisp.

Function: (setf adler32-%seed) (instance)
Package

random-state.

Source

adler32.lisp.

Function: adler32-hash (index seed)
Package

random-state.

Source

adler32.lisp.

Function: adler32-index (instance)
Package

random-state.

Source

adler32.lisp.

Function: (setf adler32-index) (instance)
Package

random-state.

Source

adler32.lisp.

Function: adler32-next (generator)
Package

random-state.

Source

adler32.lisp.

Function: barr (bytes &rest contents)
Package

random-state.

Source

toolkit.lisp.

Function: byte-array-to-int (array)
Package

random-state.

Source

toolkit.lisp.

Function: cityhash-64-%seed (instance)
Package

random-state.

Source

cityhash.lisp.

Function: (setf cityhash-64-%seed) (instance)
Package

random-state.

Source

cityhash.lisp.

Function: cityhash-64-hash (index seed)
Package

random-state.

Source

cityhash.lisp.

Function: cityhash-64-index (instance)
Package

random-state.

Source

cityhash.lisp.

Function: (setf cityhash-64-index) (instance)
Package

random-state.

Source

cityhash.lisp.

Function: cityhash-64-next (generator)
Package

random-state.

Source

cityhash.lisp.

Function: copy-adler32 (generator)
Package

random-state.

Source

adler32.lisp.

Function: copy-cityhash-64 (generator)
Package

random-state.

Source

cityhash.lisp.

Function: copy-kiss11 (generator)
Package

random-state.

Source

kiss.lisp.

Function: copy-linear-congruence (generator)
Package

random-state.

Source

linear-congruence.lisp.

Function: copy-mersenne-twister (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Function: copy-mersenne-twister-32 (generator)
Package

random-state.

Source

mersenne-twister.lisp.

Function: copy-mersenne-twister-64 (generator)
Package

random-state.

Source

mersenne-twister.lisp.

Function: copy-middle-square (generator)
Package

random-state.

Source

middle-square.lisp.

Function: copy-murmurhash3 (generator)
Package

random-state.

Source

murmurhash.lisp.

Function: copy-pcg (generator)
Package

random-state.

Source

pcg.lisp.

Function: copy-rc4 (generator)
Package

random-state.

Source

rc4.lisp.

Function: copy-squirrel (generator)
Package

random-state.

Source

squirrel.lisp.

Function: copy-tt800 (generator)
Package

random-state.

Source

tt800.lisp.

Function: copy-xoroshiro-128** (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoroshiro-128+ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoroshiro-128++ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoroshiro-64* (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoroshiro-64** (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-1024* (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-128 (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-128+ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-32 (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-64 (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-64* (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorshift-generator (instance)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xorwow (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-128** (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-128+ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-128++ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-256** (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-256+ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-256++ (generator)
Package

random-state.

Source

xorshift.lisp.

Function: copy-xoshiro-generator (instance)
Package

random-state.

Source

xorshift.lisp.

Function: fit-bits (bits x)
Package

random-state.

Source

toolkit.lisp.

Function: generator-p (object)
Package

random-state.

Source

generator.lisp.

Function: intern* (&rest args)
Package

random-state.

Source

toolkit.lisp.

Function: kiss11-%seed (instance)
Package

random-state.

Source

kiss.lisp.

Function: (setf kiss11-%seed) (instance)
Package

random-state.

Source

kiss.lisp.

Reader: kiss11-carry (instance)
Writer: (setf kiss11-carry) (instance)
Package

random-state.

Source

kiss.lisp.

Target Slot

carry.

Reader: kiss11-cng (instance)
Writer: (setf kiss11-cng) (instance)
Package

random-state.

Source

kiss.lisp.

Target Slot

cng.

Reader: kiss11-j (instance)
Writer: (setf kiss11-j) (instance)
Package

random-state.

Source

kiss.lisp.

Target Slot

j.

Function: kiss11-next (generator)
Package

random-state.

Source

kiss.lisp.

Reader: kiss11-q (instance)
Writer: (setf kiss11-q) (instance)
Package

random-state.

Source

kiss.lisp.

Target Slot

q.

Function: kiss11-reseed (generator seed)
Package

random-state.

Source

kiss.lisp.

Reader: kiss11-xs (instance)
Writer: (setf kiss11-xs) (instance)
Package

random-state.

Source

kiss.lisp.

Target Slot

xs.

Function: linear-congruence-%seed (instance)
Package

random-state.

Source

linear-congruence.lisp.

Function: (setf linear-congruence-%seed) (instance)
Package

random-state.

Source

linear-congruence.lisp.

Reader: linear-congruence-increment (instance)
Writer: (setf linear-congruence-increment) (instance)
Package

random-state.

Source

linear-congruence.lisp.

Target Slot

increment.

Reader: linear-congruence-multiplier (instance)
Writer: (setf linear-congruence-multiplier) (instance)
Package

random-state.

Source

linear-congruence.lisp.

Target Slot

multiplier.

Function: linear-congruence-next (generator)
Package

random-state.

Source

linear-congruence.lisp.

Function: linear-congruence-reseed (generator seed)
Package

random-state.

Source

linear-congruence.lisp.

Reader: linear-congruence-state (instance)
Writer: (setf linear-congruence-state) (instance)
Package

random-state.

Source

linear-congruence.lisp.

Target Slot

state.

Function: make-adler32 (&key %seed index)
Package

random-state.

Source

adler32.lisp.

Function: make-cityhash-64 (&key %seed index)
Package

random-state.

Source

cityhash.lisp.

Function: make-kiss11 (&key %seed q carry j cng xs)
Package

random-state.

Source

kiss.lisp.

Function: make-linear-congruence (&key %seed state multiplier increment)
Package

random-state.

Source

linear-congruence.lisp.

Function: make-mersenne-twister-32 (&key %seed index upper lower magic matrix)
Package

random-state.

Source

mersenne-twister.lisp.

Function: make-mersenne-twister-64 (&key %seed index upper lower magic matrix)
Package

random-state.

Source

mersenne-twister.lisp.

Function: make-middle-square (&key %seed bits state)
Package

random-state.

Source

middle-square.lisp.

Function: make-murmurhash3 (&key %seed index)
Package

random-state.

Source

murmurhash.lisp.

Function: make-pcg (&key %seed state inc)
Package

random-state.

Source

pcg.lisp.

Function: make-rc4 (&key %seed index1 index2 state)
Package

random-state.

Source

rc4.lisp.

Function: make-squirrel (&key %seed index)
Package

random-state.

Source

squirrel.lisp.

Function: make-tt800 (&key %seed magic n m index matrix)
Package

random-state.

Source

tt800.lisp.

Function: make-xoroshiro-128** (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoroshiro-128+ (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoroshiro-128++ (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoroshiro-64* (&key %seed magic values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoroshiro-64** (&key %seed magic values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorshift-1024* (&key %seed xorshifts index magic values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorshift-128 (&key %seed xorshifts values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorshift-128+ (&key %seed xorshifts values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorshift-32 (&key %seed xorshifts value)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorshift-64 (&key %seed xorshifts value)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorshift-64* (&key %seed xorshifts value magic)
Package

random-state.

Source

xorshift.lisp.

Function: make-xorwow (&key %seed xorshifts counter values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoshiro-128** (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoshiro-128+ (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoshiro-128++ (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoshiro-256** (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoshiro-256+ (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: make-xoshiro-256++ (&key %seed values)
Package

random-state.

Source

xorshift.lisp.

Function: mersenne-twister-%seed (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Function: (setf mersenne-twister-%seed) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Function: mersenne-twister-32-%seed (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Function: (setf mersenne-twister-32-%seed) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Reader: mersenne-twister-32-index (instance)
Writer: (setf mersenne-twister-32-index) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

index.

Reader: mersenne-twister-32-lower (instance)
Writer: (setf mersenne-twister-32-lower) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

lower.

Reader: mersenne-twister-32-magic (instance)
Writer: (setf mersenne-twister-32-magic) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

magic.

Reader: mersenne-twister-32-matrix (instance)
Writer: (setf mersenne-twister-32-matrix) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

matrix.

Function: mersenne-twister-32-next (generator)
Package

random-state.

Source

mersenne-twister.lisp.

Function: mersenne-twister-32-reseed (generator seed)
Package

random-state.

Source

mersenne-twister.lisp.

Reader: mersenne-twister-32-upper (instance)
Writer: (setf mersenne-twister-32-upper) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

upper.

Function: mersenne-twister-64-%seed (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Function: (setf mersenne-twister-64-%seed) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Reader: mersenne-twister-64-index (instance)
Writer: (setf mersenne-twister-64-index) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

index.

Reader: mersenne-twister-64-lower (instance)
Writer: (setf mersenne-twister-64-lower) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

lower.

Reader: mersenne-twister-64-magic (instance)
Writer: (setf mersenne-twister-64-magic) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

magic.

Reader: mersenne-twister-64-matrix (instance)
Writer: (setf mersenne-twister-64-matrix) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

matrix.

Function: mersenne-twister-64-next (generator)
Package

random-state.

Source

mersenne-twister.lisp.

Function: mersenne-twister-64-reseed (generator seed)
Package

random-state.

Source

mersenne-twister.lisp.

Reader: mersenne-twister-64-upper (instance)
Writer: (setf mersenne-twister-64-upper) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

upper.

Reader: mersenne-twister-index (instance)
Writer: (setf mersenne-twister-index) (instance)
Package

random-state.

Source

mersenne-twister.lisp.

Target Slot

index.

Function: middle-square-%seed (instance)
Package

random-state.

Source

middle-square.lisp.

Function: (setf middle-square-%seed) (instance)
Package

random-state.

Source

middle-square.lisp.

Reader: middle-square-bits (instance)
Writer: (setf middle-square-bits) (instance)
Package

random-state.

Source

middle-square.lisp.

Target Slot

bits.

Function: middle-square-next (generator)
Package

random-state.

Source

middle-square.lisp.

Function: middle-square-reseed (generator seed)
Package

random-state.

Source

middle-square.lisp.

Reader: middle-square-state (instance)
Writer: (setf middle-square-state) (instance)
Package

random-state.

Source

middle-square.lisp.

Target Slot

state.

Function: murmurhash3-%seed (instance)
Package

random-state.

Source

murmurhash.lisp.

Function: (setf murmurhash3-%seed) (instance)
Package

random-state.

Source

murmurhash.lisp.

Function: murmurhash3-hash (index seed)
Package

random-state.

Source

murmurhash.lisp.

Function: murmurhash3-index (instance)
Package

random-state.

Source

murmurhash.lisp.

Function: (setf murmurhash3-index) (instance)
Package

random-state.

Source

murmurhash.lisp.

Function: murmurhash3-next (generator)
Package

random-state.

Source

murmurhash.lisp.

Function: pcg-%seed (instance)
Package

random-state.

Source

pcg.lisp.

Function: (setf pcg-%seed) (instance)
Package

random-state.

Source

pcg.lisp.

Reader: pcg-inc (instance)
Writer: (setf pcg-inc) (instance)
Package

random-state.

Source

pcg.lisp.

Target Slot

inc.

Function: pcg-next (generator)
Package

random-state.

Source

pcg.lisp.

Function: pcg-reseed (generator seed)
Package

random-state.

Source

pcg.lisp.

Reader: pcg-state (instance)
Writer: (setf pcg-state) (instance)
Package

random-state.

Source

pcg.lisp.

Target Slot

state.

Function: rc4-%seed (instance)
Package

random-state.

Source

rc4.lisp.

Function: (setf rc4-%seed) (instance)
Package

random-state.

Source

rc4.lisp.

Reader: rc4-index1 (instance)
Writer: (setf rc4-index1) (instance)
Package

random-state.

Source

rc4.lisp.

Target Slot

index1.

Reader: rc4-index2 (instance)
Writer: (setf rc4-index2) (instance)
Package

random-state.

Source

rc4.lisp.

Target Slot

index2.

Function: rc4-next (generator)
Package

random-state.

Source

rc4.lisp.

Function: rc4-reseed (generator seed)
Package

random-state.

Source

rc4.lisp.

Reader: rc4-state (instance)
Writer: (setf rc4-state) (instance)
Package

random-state.

Source

rc4.lisp.

Target Slot

state.

Function: splitmix32-array (count seed)
Package

random-state.

Source

xorshift.lisp.

Function: splitmix64 (seed)
Package

random-state.

Source

xorshift.lisp.

Function: splitmix64-array (count seed)
Package

random-state.

Source

xorshift.lisp.

Function: squirrel-%seed (instance)
Package

random-state.

Source

squirrel.lisp.

Function: (setf squirrel-%seed) (instance)
Package

random-state.

Source

squirrel.lisp.

Function: squirrel-hash (index seed)
Package

random-state.

Source

squirrel.lisp.

Function: squirrel-index (instance)
Package

random-state.

Source

squirrel.lisp.

Function: (setf squirrel-index) (instance)
Package

random-state.

Source

squirrel.lisp.

Function: squirrel-next (generator)
Package

random-state.

Source

squirrel.lisp.

Function: stateful-generator-%seed (instance)
Package

random-state.

Source

generator.lisp.

Function: (setf stateful-generator-%seed) (instance)
Package

random-state.

Source

generator.lisp.

Function: tt800-%seed (instance)
Package

random-state.

Source

tt800.lisp.

Function: (setf tt800-%seed) (instance)
Package

random-state.

Source

tt800.lisp.

Reader: tt800-index (instance)
Writer: (setf tt800-index) (instance)
Package

random-state.

Source

tt800.lisp.

Target Slot

index.

Reader: tt800-m (instance)
Writer: (setf tt800-m) (instance)
Package

random-state.

Source

tt800.lisp.

Target Slot

m.

Reader: tt800-magic (instance)
Writer: (setf tt800-magic) (instance)
Package

random-state.

Source

tt800.lisp.

Target Slot

magic.

Reader: tt800-matrix (instance)
Writer: (setf tt800-matrix) (instance)
Package

random-state.

Source

tt800.lisp.

Target Slot

matrix.

Reader: tt800-n (instance)
Writer: (setf tt800-n) (instance)
Package

random-state.

Source

tt800.lisp.

Target Slot

n.

Function: tt800-next (generator)
Package

random-state.

Source

tt800.lisp.

Function: tt800-reseed (generator seed)
Package

random-state.

Source

tt800.lisp.

Function: xoroshiro-128**-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoroshiro-128**-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-128**-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-128**-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-128**-values (instance)
Writer: (setf xoroshiro-128**-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoroshiro-128++-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoroshiro-128++-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-128++-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-128++-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-128++-values (instance)
Writer: (setf xoroshiro-128++-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoroshiro-128+-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoroshiro-128+-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-128+-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-128+-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-128+-values (instance)
Writer: (setf xoroshiro-128+-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoroshiro-64**-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoroshiro-64**-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-64**-magic (instance)
Writer: (setf xoroshiro-64**-magic) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

magic.

Function: xoroshiro-64**-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-64**-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-64**-values (instance)
Writer: (setf xoroshiro-64**-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoroshiro-64*-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoroshiro-64*-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-64*-magic (instance)
Writer: (setf xoroshiro-64*-magic) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

magic.

Function: xoroshiro-64*-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoroshiro-64*-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoroshiro-64*-values (instance)
Writer: (setf xoroshiro-64*-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xorshift-1024*-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-1024*-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-1024*-index (instance)
Writer: (setf xorshift-1024*-index) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

index.

Reader: xorshift-1024*-magic (instance)
Writer: (setf xorshift-1024*-magic) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

magic.

Function: xorshift-1024*-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-1024*-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-1024*-values (instance)
Writer: (setf xorshift-1024*-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Reader: xorshift-1024*-xorshifts (instance)
Writer: (setf xorshift-1024*-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshift-128+-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-128+-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-128+-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-128+-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-128+-values (instance)
Writer: (setf xorshift-128+-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Reader: xorshift-128+-xorshifts (instance)
Writer: (setf xorshift-128+-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshift-128-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-128-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-128-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-128-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-128-values (instance)
Writer: (setf xorshift-128-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Reader: xorshift-128-xorshifts (instance)
Writer: (setf xorshift-128-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshift-32-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-32-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-32-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-32-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-32-value (instance)
Writer: (setf xorshift-32-value) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

value.

Reader: xorshift-32-xorshifts (instance)
Writer: (setf xorshift-32-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshift-64*-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-64*-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-64*-magic (instance)
Writer: (setf xorshift-64*-magic) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

magic.

Function: xorshift-64*-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-64*-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-64*-value (instance)
Writer: (setf xorshift-64*-value) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

value.

Reader: xorshift-64*-xorshifts (instance)
Writer: (setf xorshift-64*-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshift-64-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-64-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-64-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorshift-64-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-64-value (instance)
Writer: (setf xorshift-64-value) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

value.

Reader: xorshift-64-xorshifts (instance)
Writer: (setf xorshift-64-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshift-generator-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorshift-generator-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Reader: xorshift-generator-xorshifts (instance)
Writer: (setf xorshift-generator-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xorshifts (&rest shifts)
Package

random-state.

Source

xorshift.lisp.

Function: xorwow-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xorwow-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Reader: xorwow-counter (instance)
Writer: (setf xorwow-counter) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

counter.

Function: xorwow-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xorwow-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xorwow-values (instance)
Writer: (setf xorwow-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Reader: xorwow-xorshifts (instance)
Writer: (setf xorwow-xorshifts) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

xorshifts.

Function: xoshiro-128**-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-128**-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-128**-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-128**-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoshiro-128**-values (instance)
Writer: (setf xoshiro-128**-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoshiro-128++-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-128++-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-128++-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-128++-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoshiro-128++-values (instance)
Writer: (setf xoshiro-128++-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoshiro-128+-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-128+-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-128+-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-128+-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoshiro-128+-values (instance)
Writer: (setf xoshiro-128+-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoshiro-256**-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-256**-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-256**-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-256**-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoshiro-256**-values (instance)
Writer: (setf xoshiro-256**-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoshiro-256++-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-256++-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-256++-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-256++-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoshiro-256++-values (instance)
Writer: (setf xoshiro-256++-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoshiro-256+-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-256+-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-256+-next (generator)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-256+-reseed (generator seed)
Package

random-state.

Source

xorshift.lisp.

Reader: xoshiro-256+-values (instance)
Writer: (setf xoshiro-256+-values) (instance)
Package

random-state.

Source

xorshift.lisp.

Target Slot

values.

Function: xoshiro-generator-%seed (instance)
Package

random-state.

Source

xorshift.lisp.

Function: (setf xoshiro-generator-%seed) (instance)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-rol32 (value count)
Package

random-state.

Source

xorshift.lisp.

Function: xoshiro-rol64 (value count)
Package

random-state.

Source

xorshift.lisp.


5.2.5 Generic functions

Generic Function: %make-generator (type &key &allow-other-keys)
Package

random-state.

Source

generator.lisp.

Methods
Method: %make-generator ((type (eql random-state)) &key)
Source

implementation.lisp.

Method: %make-generator ((type (eql random-state::xoroshiro-128**)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state::xoroshiro-128++)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state::xoroshiro-128+)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state::xoroshiro-64**)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state::xoroshiro-64*)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xoshiro-256+)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state::xoshiro-256++)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xoshiro-256**)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xoshiro-128+)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state::xoshiro-128++)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xoshiro-128**)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorshift-128+)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorshift-1024*)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorshift-64*)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorwow)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorshift-128)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorshift-64)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:xorshift-32)) &rest initargs &key &allow-other-keys)
Source

xorshift.lisp.

Method: %make-generator ((type (eql random-state:cityhash-64)) &rest initargs &key &allow-other-keys)
Source

cityhash.lisp.

Method: %make-generator ((type (eql random-state:murmurhash3)) &rest initargs &key &allow-other-keys)
Source

murmurhash.lisp.

Method: %make-generator ((type (eql random-state:adler32)) &rest initargs &key &allow-other-keys)
Source

adler32.lisp.

Method: %make-generator ((type (eql random-state:squirrel)) &rest initargs &key &allow-other-keys)
Source

squirrel.lisp.

Method: %make-generator ((type (eql random-state:kiss11)) &rest initargs &key &allow-other-keys)
Source

kiss.lisp.

Method: %make-generator ((type (eql random-state:tt800)) &rest initargs &key &allow-other-keys)
Source

tt800.lisp.

Method: %make-generator ((type (eql random-state:rc4)) &rest initargs &key &allow-other-keys)
Source

rc4.lisp.

Method: %make-generator ((type (eql random-state:pcg)) &rest initargs &key &allow-other-keys)
Source

pcg.lisp.

Method: %make-generator ((type (eql random-state:middle-square)) &rest initargs &key &allow-other-keys)
Source

middle-square.lisp.

Method: %make-generator ((type (eql random-state:mersenne-twister-64)) &rest initargs &key &allow-other-keys)
Source

mersenne-twister.lisp.

Method: %make-generator ((type (eql random-state:mersenne-twister-32)) &rest initargs &key &allow-other-keys)
Source

mersenne-twister.lisp.

Method: %make-generator ((type (eql random-state:linear-congruence)) &rest initargs &key &allow-other-keys)
Source

linear-congruence.lisp.

Method: %make-generator ((type symbol) &rest args)
Method: %make-generator :around ((type stateful-generator) &key)
Generic Function: hash (hash-generator index seed)
Package

random-state.

Source

generator.lisp.

Methods
Method: hash ((generator cityhash-64) index seed)
Source

cityhash.lisp.

Method: hash ((generator murmurhash3) index seed)
Source

murmurhash.lisp.

Method: hash ((generator adler32) index seed)
Source

adler32.lisp.

Method: hash ((generator squirrel) index seed)
Source

squirrel.lisp.

Method: hash ((hash-generator symbol) index seed)

5.2.6 Structures

Structure: mersenne-twister
Package

random-state.

Source

mersenne-twister.lisp.

Direct superclasses

stateful-generator.

Direct subclasses
Direct slots
Slot: index
Type

(unsigned-byte 64)

Initform

0

Readers

mersenne-twister-index.

Writers

(setf mersenne-twister-index).

Structure: xoroshiro-128**

Non-linear rotating general-purpose 64-bit number algorithm that is similar to Xoshiro-256** but uses less space.

See XOSHIRO-256**
See https://prng.di.unimi.it/
See https://prng.di.unimi.it/xoroshiro128starstar.c
See https://en.wikipedia.org/wiki/Xoroshiro128%2B

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (2))

Initform

(make-array 2 :element-type (quote (unsigned-byte 64)))

Readers

xoroshiro-128**-values.

Writers

(setf xoroshiro-128**-values).

Structure: xoroshiro-128+

A variant of XOROSHIRO-128++ that is slightly faster. It is suggested to be used for generating 64-bit floating-point values using its upper 53 bits and random boolean values using a sign test.

See XOROSHIRO-128++
See https://prng.di.unimi.it/xoroshiro128plus.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (2))

Initform

(make-array 2 :element-type (quote (unsigned-byte 64)))

Readers

xoroshiro-128+-values.

Writers

(setf xoroshiro-128+-values).

Structure: xoroshiro-128++

A variant of XOROSHIRO-128** using addition instead of multiplication.

See XOROSHIRO-128**
See https://prng.di.unimi.it/xoroshiro128plusplus.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (2))

Initform

(make-array 2 :element-type (quote (unsigned-byte 64)))

Readers

xoroshiro-128++-values.

Writers

(setf xoroshiro-128++-values).

Structure: xoroshiro-64*

Slightly faster variant of XOROSHIRO-64** meant solely for generating 32-bit floating-point numbers by extracting the upper 26-bits due to the linearity of the lower bits.

See XOROSHIRO-64**
See https://prng.di.unimi.it/xoroshiro64star.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: magic
Initform

2654435771

Readers

xoroshiro-64*-magic.

Writers

(setf xoroshiro-64*-magic).

Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (2))

Initform

(make-array 2 :element-type (quote (unsigned-byte 32)))

Readers

xoroshiro-64*-values.

Writers

(setf xoroshiro-64*-values).

Structure: xoroshiro-64**

32-bit variant of XOROSHIRO-128**.

See XOROSHIRO-128**
See https://prng.di.unimi.it/xoroshiro64starstar.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: magic
Initform

2654435771

Readers

xoroshiro-64**-magic.

Writers

(setf xoroshiro-64**-magic).

Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (2))

Initform

(make-array 2 :element-type (quote (unsigned-byte 32)))

Readers

xoroshiro-64**-values.

Writers

(setf xoroshiro-64**-values).

Structure: xorshift-generator
Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct subclasses
Direct slots
Slot: xorshifts
Type

(simple-array (signed-byte 16) (3))

Initform

(make-array 3 :element-type (quote (signed-byte 16)))

Readers

xorshift-generator-xorshifts.

Writers

(setf xorshift-generator-xorshifts).

Structure: xoshiro-128++

32-bit variant of XOSHIRO-256++.

See XOSHIRO-256++
See https://prng.di.unimi.it/xoshiro128plus.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 32) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 32)))

Readers

xoshiro-128++-values.

Writers

(setf xoshiro-128++-values).

Structure: xoshiro-256++

A variant of XOSHIRO-256** using addition instead of multiplication.

See XOSHIRO-256**
See https://prng.di.unimi.it/xoshiro256plusplus.c

Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.

Direct methods
Direct slots
Slot: values
Package

common-lisp.

Type

(simple-array (unsigned-byte 64) (4))

Initform

(make-array 4 :element-type (quote (unsigned-byte 64)))

Readers

xoshiro-256++-values.

Writers

(setf xoshiro-256++-values).

Structure: xoshiro-generator
Package

random-state.

Source

xorshift.lisp.

Direct superclasses

stateful-generator.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (   3   6  
A   B   C   D   E   F   G   H   I   K   L   M   N   P   R   S   T   U   X  
Index Entry  Section

%
%inner-mersenne-twister: Private macros
%inner-xoshiro: Private macros
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%make-generator: Private generic functions
%seed: Private ordinary functions
%xorshift: Private macros

(
(setf %seed): Private ordinary functions
(setf adler32-%seed): Private ordinary functions
(setf adler32-index): Private ordinary functions
(setf cityhash-64-%seed): Private ordinary functions
(setf cityhash-64-index): Private ordinary functions
(setf global-generator): Public ordinary functions
(setf index): Public ordinary functions
(setf kiss11-%seed): Private ordinary functions
(setf kiss11-carry): Private ordinary functions
(setf kiss11-cng): Private ordinary functions
(setf kiss11-j): Private ordinary functions
(setf kiss11-q): Private ordinary functions
(setf kiss11-xs): Private ordinary functions
(setf linear-congruence-%seed): Private ordinary functions
(setf linear-congruence-increment): Private ordinary functions
(setf linear-congruence-multiplier): Private ordinary functions
(setf linear-congruence-state): Private ordinary functions
(setf mersenne-twister-%seed): Private ordinary functions
(setf mersenne-twister-32-%seed): Private ordinary functions
(setf mersenne-twister-32-index): Private ordinary functions
(setf mersenne-twister-32-lower): Private ordinary functions
(setf mersenne-twister-32-magic): Private ordinary functions
(setf mersenne-twister-32-matrix): Private ordinary functions
(setf mersenne-twister-32-upper): Private ordinary functions
(setf mersenne-twister-64-%seed): Private ordinary functions
(setf mersenne-twister-64-index): Private ordinary functions
(setf mersenne-twister-64-lower): Private ordinary functions
(setf mersenne-twister-64-magic): Private ordinary functions
(setf mersenne-twister-64-matrix): Private ordinary functions
(setf mersenne-twister-64-upper): Private ordinary functions
(setf mersenne-twister-index): Private ordinary functions
(setf middle-square-%seed): Private ordinary functions
(setf middle-square-bits): Private ordinary functions
(setf middle-square-state): Private ordinary functions
(setf murmurhash3-%seed): Private ordinary functions
(setf murmurhash3-index): Private ordinary functions
(setf pcg-%seed): Private ordinary functions
(setf pcg-inc): Private ordinary functions
(setf pcg-state): Private ordinary functions
(setf rc4-%seed): Private ordinary functions
(setf rc4-index1): Private ordinary functions
(setf rc4-index2): Private ordinary functions
(setf rc4-state): Private ordinary functions
(setf squirrel-%seed): Private ordinary functions
(setf squirrel-index): Private ordinary functions
(setf stateful-generator-%seed): Private ordinary functions
(setf tt800-%seed): Private ordinary functions
(setf tt800-index): Private ordinary functions
(setf tt800-m): Private ordinary functions
(setf tt800-magic): Private ordinary functions
(setf tt800-matrix): Private ordinary functions
(setf tt800-n): Private ordinary functions
(setf xoroshiro-128**-%seed): Private ordinary functions
(setf xoroshiro-128**-values): Private ordinary functions
(setf xoroshiro-128++-%seed): Private ordinary functions
(setf xoroshiro-128++-values): Private ordinary functions
(setf xoroshiro-128+-%seed): Private ordinary functions
(setf xoroshiro-128+-values): Private ordinary functions
(setf xoroshiro-64**-%seed): Private ordinary functions
(setf xoroshiro-64**-magic): Private ordinary functions
(setf xoroshiro-64**-values): Private ordinary functions
(setf xoroshiro-64*-%seed): Private ordinary functions
(setf xoroshiro-64*-magic): Private ordinary functions
(setf xoroshiro-64*-values): Private ordinary functions
(setf xorshift-1024*-%seed): Private ordinary functions
(setf xorshift-1024*-index): Private ordinary functions
(setf xorshift-1024*-magic): Private ordinary functions
(setf xorshift-1024*-values): Private ordinary functions
(setf xorshift-1024*-xorshifts): Private ordinary functions
(setf xorshift-128+-%seed): Private ordinary functions
(setf xorshift-128+-values): Private ordinary functions
(setf xorshift-128+-xorshifts): Private ordinary functions
(setf xorshift-128-%seed): Private ordinary functions
(setf xorshift-128-values): Private ordinary functions
(setf xorshift-128-xorshifts): Private ordinary functions
(setf xorshift-32-%seed): Private ordinary functions
(setf xorshift-32-value): Private ordinary functions
(setf xorshift-32-xorshifts): Private ordinary functions
(setf xorshift-64*-%seed): Private ordinary functions
(setf xorshift-64*-magic): Private ordinary functions
(setf xorshift-64*-value): Private ordinary functions
(setf xorshift-64*-xorshifts): Private ordinary functions
(setf xorshift-64-%seed): Private ordinary functions
(setf xorshift-64-value): Private ordinary functions
(setf xorshift-64-xorshifts): Private ordinary functions
(setf xorshift-generator-%seed): Private ordinary functions
(setf xorshift-generator-xorshifts): Private ordinary functions
(setf xorwow-%seed): Private ordinary functions
(setf xorwow-counter): Private ordinary functions
(setf xorwow-values): Private ordinary functions
(setf xorwow-xorshifts): Private ordinary functions
(setf xoshiro-128**-%seed): Private ordinary functions
(setf xoshiro-128**-values): Private ordinary functions
(setf xoshiro-128++-%seed): Private ordinary functions
(setf xoshiro-128++-values): Private ordinary functions
(setf xoshiro-128+-%seed): Private ordinary functions
(setf xoshiro-128+-values): Private ordinary functions
(setf xoshiro-256**-%seed): Private ordinary functions
(setf xoshiro-256**-values): Private ordinary functions
(setf xoshiro-256++-%seed): Private ordinary functions
(setf xoshiro-256++-values): Private ordinary functions
(setf xoshiro-256+-%seed): Private ordinary functions
(setf xoshiro-256+-values): Private ordinary functions
(setf xoshiro-generator-%seed): Private ordinary functions

3
32bit-seed-array: Private ordinary functions

6
64bit-seed-array: Private ordinary functions

A
adler32-%seed: Private ordinary functions
adler32-hash: Private ordinary functions
adler32-index: Private ordinary functions
adler32-next: Private ordinary functions

B
barr: Private ordinary functions
bits-per-byte: Public compiler macros
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
bits-per-byte: Public generic functions
byte-array-to-int: Private ordinary functions

C
cityhash-64-%seed: Private ordinary functions
cityhash-64-hash: Private ordinary functions
cityhash-64-index: Private ordinary functions
cityhash-64-next: Private ordinary functions
Compiler Macro, bits-per-byte: Public compiler macros
Compiler Macro, copy: Public compiler macros
Compiler Macro, ensure-generator: Public compiler macros
Compiler Macro, fit-bits: Private compiler macros
Compiler Macro, global-generator: Public compiler macros
Compiler Macro, hash: Private compiler macros
Compiler Macro, next-byte: Public compiler macros
Compiler Macro, random-float: Public compiler macros
Compiler Macro, random-unit: Public compiler macros
Compiler Macro, reseed: Public compiler macros
Compiler Macro, rewind: Public compiler macros
Compiler Macro, seed: Public compiler macros
copy: Public compiler macros
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy: Public generic functions
copy-adler32: Private ordinary functions
copy-cityhash-64: Private ordinary functions
copy-kiss11: Private ordinary functions
copy-linear-congruence: Private ordinary functions
copy-mersenne-twister: Private ordinary functions
copy-mersenne-twister-32: Private ordinary functions
copy-mersenne-twister-64: Private ordinary functions
copy-middle-square: Private ordinary functions
copy-murmurhash3: Private ordinary functions
copy-pcg: Private ordinary functions
copy-rc4: Private ordinary functions
copy-squirrel: Private ordinary functions
copy-tt800: Private ordinary functions
copy-xoroshiro-128**: Private ordinary functions
copy-xoroshiro-128+: Private ordinary functions
copy-xoroshiro-128++: Private ordinary functions
copy-xoroshiro-64*: Private ordinary functions
copy-xoroshiro-64**: Private ordinary functions
copy-xorshift-1024*: Private ordinary functions
copy-xorshift-128: Private ordinary functions
copy-xorshift-128+: Private ordinary functions
copy-xorshift-32: Private ordinary functions
copy-xorshift-64: Private ordinary functions
copy-xorshift-64*: Private ordinary functions
copy-xorshift-generator: Private ordinary functions
copy-xorwow: Private ordinary functions
copy-xoshiro-128**: Private ordinary functions
copy-xoshiro-128+: Private ordinary functions
copy-xoshiro-128++: Private ordinary functions
copy-xoshiro-256**: Private ordinary functions
copy-xoshiro-256+: Private ordinary functions
copy-xoshiro-256++: Private ordinary functions
copy-xoshiro-generator: Private ordinary functions

D
define-generator: Public macros
define-generator-fun: Private macros
draw: Public ordinary functions

E
ensure-generator: Public compiler macros
ensure-generator: Public ordinary functions

F
fit-bits: Private compiler macros
fit-bits: Private ordinary functions
Function, %seed: Private ordinary functions
Function, (setf %seed): Private ordinary functions
Function, (setf adler32-%seed): Private ordinary functions
Function, (setf adler32-index): Private ordinary functions
Function, (setf cityhash-64-%seed): Private ordinary functions
Function, (setf cityhash-64-index): Private ordinary functions
Function, (setf global-generator): Public ordinary functions
Function, (setf index): Public ordinary functions
Function, (setf kiss11-%seed): Private ordinary functions
Function, (setf kiss11-carry): Private ordinary functions
Function, (setf kiss11-cng): Private ordinary functions
Function, (setf kiss11-j): Private ordinary functions
Function, (setf kiss11-q): Private ordinary functions
Function, (setf kiss11-xs): Private ordinary functions
Function, (setf linear-congruence-%seed): Private ordinary functions
Function, (setf linear-congruence-increment): Private ordinary functions
Function, (setf linear-congruence-multiplier): Private ordinary functions
Function, (setf linear-congruence-state): Private ordinary functions
Function, (setf mersenne-twister-%seed): Private ordinary functions
Function, (setf mersenne-twister-32-%seed): Private ordinary functions
Function, (setf mersenne-twister-32-index): Private ordinary functions
Function, (setf mersenne-twister-32-lower): Private ordinary functions
Function, (setf mersenne-twister-32-magic): Private ordinary functions
Function, (setf mersenne-twister-32-matrix): Private ordinary functions
Function, (setf mersenne-twister-32-upper): Private ordinary functions
Function, (setf mersenne-twister-64-%seed): Private ordinary functions
Function, (setf mersenne-twister-64-index): Private ordinary functions
Function, (setf mersenne-twister-64-lower): Private ordinary functions
Function, (setf mersenne-twister-64-magic): Private ordinary functions
Function, (setf mersenne-twister-64-matrix): Private ordinary functions
Function, (setf mersenne-twister-64-upper): Private ordinary functions
Function, (setf mersenne-twister-index): Private ordinary functions
Function, (setf middle-square-%seed): Private ordinary functions
Function, (setf middle-square-bits): Private ordinary functions
Function, (setf middle-square-state): Private ordinary functions
Function, (setf murmurhash3-%seed): Private ordinary functions
Function, (setf murmurhash3-index): Private ordinary functions
Function, (setf pcg-%seed): Private ordinary functions
Function, (setf pcg-inc): Private ordinary functions
Function, (setf pcg-state): Private ordinary functions
Function, (setf rc4-%seed): Private ordinary functions
Function, (setf rc4-index1): Private ordinary functions
Function, (setf rc4-index2): Private ordinary functions
Function, (setf rc4-state): Private ordinary functions
Function, (setf squirrel-%seed): Private ordinary functions
Function, (setf squirrel-index): Private ordinary functions
Function, (setf stateful-generator-%seed): Private ordinary functions
Function, (setf tt800-%seed): Private ordinary functions
Function, (setf tt800-index): Private ordinary functions
Function, (setf tt800-m): Private ordinary functions
Function, (setf tt800-magic): Private ordinary functions
Function, (setf tt800-matrix): Private ordinary functions
Function, (setf tt800-n): Private ordinary functions
Function, (setf xoroshiro-128**-%seed): Private ordinary functions
Function, (setf xoroshiro-128**-values): Private ordinary functions
Function, (setf xoroshiro-128++-%seed): Private ordinary functions
Function, (setf xoroshiro-128++-values): Private ordinary functions
Function, (setf xoroshiro-128+-%seed): Private ordinary functions
Function, (setf xoroshiro-128+-values): Private ordinary functions
Function, (setf xoroshiro-64**-%seed): Private ordinary functions
Function, (setf xoroshiro-64**-magic): Private ordinary functions
Function, (setf xoroshiro-64**-values): Private ordinary functions
Function, (setf xoroshiro-64*-%seed): Private ordinary functions
Function, (setf xoroshiro-64*-magic): Private ordinary functions
Function, (setf xoroshiro-64*-values): Private ordinary functions
Function, (setf xorshift-1024*-%seed): Private ordinary functions
Function, (setf xorshift-1024*-index): Private ordinary functions
Function, (setf xorshift-1024*-magic): Private ordinary functions
Function, (setf xorshift-1024*-values): Private ordinary functions
Function, (setf xorshift-1024*-xorshifts): Private ordinary functions
Function, (setf xorshift-128+-%seed): Private ordinary functions
Function, (setf xorshift-128+-values): Private ordinary functions
Function, (setf xorshift-128+-xorshifts): Private ordinary functions
Function, (setf xorshift-128-%seed): Private ordinary functions
Function, (setf xorshift-128-values): Private ordinary functions
Function, (setf xorshift-128-xorshifts): Private ordinary functions
Function, (setf xorshift-32-%seed): Private ordinary functions
Function, (setf xorshift-32-value): Private ordinary functions
Function, (setf xorshift-32-xorshifts): Private ordinary functions
Function, (setf xorshift-64*-%seed): Private ordinary functions
Function, (setf xorshift-64*-magic): Private ordinary functions
Function, (setf xorshift-64*-value): Private ordinary functions
Function, (setf xorshift-64*-xorshifts): Private ordinary functions
Function, (setf xorshift-64-%seed): Private ordinary functions
Function, (setf xorshift-64-value): Private ordinary functions
Function, (setf xorshift-64-xorshifts): Private ordinary functions
Function, (setf xorshift-generator-%seed): Private ordinary functions
Function, (setf xorshift-generator-xorshifts): Private ordinary functions
Function, (setf xorwow-%seed): Private ordinary functions
Function, (setf xorwow-counter): Private ordinary functions
Function, (setf xorwow-values): Private ordinary functions
Function, (setf xorwow-xorshifts): Private ordinary functions
Function, (setf xoshiro-128**-%seed): Private ordinary functions
Function, (setf xoshiro-128**-values): Private ordinary functions
Function, (setf xoshiro-128++-%seed): Private ordinary functions
Function, (setf xoshiro-128++-values): Private ordinary functions
Function, (setf xoshiro-128+-%seed): Private ordinary functions
Function, (setf xoshiro-128+-values): Private ordinary functions
Function, (setf xoshiro-256**-%seed): Private ordinary functions
Function, (setf xoshiro-256**-values): Private ordinary functions
Function, (setf xoshiro-256++-%seed): Private ordinary functions
Function, (setf xoshiro-256++-values): Private ordinary functions
Function, (setf xoshiro-256+-%seed): Private ordinary functions
Function, (setf xoshiro-256+-values): Private ordinary functions
Function, (setf xoshiro-generator-%seed): Private ordinary functions
Function, 32bit-seed-array: Private ordinary functions
Function, 64bit-seed-array: Private ordinary functions
Function, adler32-%seed: Private ordinary functions
Function, adler32-hash: Private ordinary functions
Function, adler32-index: Private ordinary functions
Function, adler32-next: Private ordinary functions
Function, barr: Private ordinary functions
Function, byte-array-to-int: Private ordinary functions
Function, cityhash-64-%seed: Private ordinary functions
Function, cityhash-64-hash: Private ordinary functions
Function, cityhash-64-index: Private ordinary functions
Function, cityhash-64-next: Private ordinary functions
Function, copy-adler32: Private ordinary functions
Function, copy-cityhash-64: Private ordinary functions
Function, copy-kiss11: Private ordinary functions
Function, copy-linear-congruence: Private ordinary functions
Function, copy-mersenne-twister: Private ordinary functions
Function, copy-mersenne-twister-32: Private ordinary functions
Function, copy-mersenne-twister-64: Private ordinary functions
Function, copy-middle-square: Private ordinary functions
Function, copy-murmurhash3: Private ordinary functions
Function, copy-pcg: Private ordinary functions
Function, copy-rc4: Private ordinary functions
Function, copy-squirrel: Private ordinary functions
Function, copy-tt800: Private ordinary functions
Function, copy-xoroshiro-128**: Private ordinary functions
Function, copy-xoroshiro-128+: Private ordinary functions
Function, copy-xoroshiro-128++: Private ordinary functions
Function, copy-xoroshiro-64*: Private ordinary functions
Function, copy-xoroshiro-64**: Private ordinary functions
Function, copy-xorshift-1024*: Private ordinary functions
Function, copy-xorshift-128: Private ordinary functions
Function, copy-xorshift-128+: Private ordinary functions
Function, copy-xorshift-32: Private ordinary functions
Function, copy-xorshift-64: Private ordinary functions
Function, copy-xorshift-64*: Private ordinary functions
Function, copy-xorshift-generator: Private ordinary functions
Function, copy-xorwow: Private ordinary functions
Function, copy-xoshiro-128**: Private ordinary functions
Function, copy-xoshiro-128+: Private ordinary functions
Function, copy-xoshiro-128++: Private ordinary functions
Function, copy-xoshiro-256**: Private ordinary functions
Function, copy-xoshiro-256+: Private ordinary functions
Function, copy-xoshiro-256++: Private ordinary functions
Function, copy-xoshiro-generator: Private ordinary functions
Function, draw: Public ordinary functions
Function, ensure-generator: Public ordinary functions
Function, fit-bits: Private ordinary functions
Function, generator-p: Private ordinary functions
Function, global-generator: Public ordinary functions
Function, histogram: Public ordinary functions
Function, hopefully-sufficiently-random-seed: Public ordinary functions
Function, index: Public ordinary functions
Function, intern*: Private ordinary functions
Function, kiss11-%seed: Private ordinary functions
Function, kiss11-carry: Private ordinary functions
Function, kiss11-cng: Private ordinary functions
Function, kiss11-j: Private ordinary functions
Function, kiss11-next: Private ordinary functions
Function, kiss11-q: Private ordinary functions
Function, kiss11-reseed: Private ordinary functions
Function, kiss11-xs: Private ordinary functions
Function, linear-congruence-%seed: Private ordinary functions
Function, linear-congruence-increment: Private ordinary functions
Function, linear-congruence-multiplier: Private ordinary functions
Function, linear-congruence-next: Private ordinary functions
Function, linear-congruence-reseed: Private ordinary functions
Function, linear-congruence-state: Private ordinary functions
Function, list-generator-types: Public ordinary functions
Function, make-adler32: Private ordinary functions
Function, make-cityhash-64: Private ordinary functions
Function, make-generator: Public ordinary functions
Function, make-kiss11: Private ordinary functions
Function, make-linear-congruence: Private ordinary functions
Function, make-mersenne-twister-32: Private ordinary functions
Function, make-mersenne-twister-64: Private ordinary functions
Function, make-middle-square: Private ordinary functions
Function, make-murmurhash3: Private ordinary functions
Function, make-pcg: Private ordinary functions
Function, make-rc4: Private ordinary functions
Function, make-squirrel: Private ordinary functions
Function, make-tt800: Private ordinary functions
Function, make-xoroshiro-128**: Private ordinary functions
Function, make-xoroshiro-128+: Private ordinary functions
Function, make-xoroshiro-128++: Private ordinary functions
Function, make-xoroshiro-64*: Private ordinary functions
Function, make-xoroshiro-64**: Private ordinary functions
Function, make-xorshift-1024*: Private ordinary functions
Function, make-xorshift-128: Private ordinary functions
Function, make-xorshift-128+: Private ordinary functions
Function, make-xorshift-32: Private ordinary functions
Function, make-xorshift-64: Private ordinary functions
Function, make-xorshift-64*: Private ordinary functions
Function, make-xorwow: Private ordinary functions
Function, make-xoshiro-128**: Private ordinary functions
Function, make-xoshiro-128+: Private ordinary functions
Function, make-xoshiro-128++: Private ordinary functions
Function, make-xoshiro-256**: Private ordinary functions
Function, make-xoshiro-256+: Private ordinary functions
Function, make-xoshiro-256++: Private ordinary functions
Function, mersenne-twister-%seed: Private ordinary functions
Function, mersenne-twister-32-%seed: Private ordinary functions
Function, mersenne-twister-32-index: Private ordinary functions
Function, mersenne-twister-32-lower: Private ordinary functions
Function, mersenne-twister-32-magic: Private ordinary functions
Function, mersenne-twister-32-matrix: Private ordinary functions
Function, mersenne-twister-32-next: Private ordinary functions
Function, mersenne-twister-32-reseed: Private ordinary functions
Function, mersenne-twister-32-upper: Private ordinary functions
Function, mersenne-twister-64-%seed: Private ordinary functions
Function, mersenne-twister-64-index: Private ordinary functions
Function, mersenne-twister-64-lower: Private ordinary functions
Function, mersenne-twister-64-magic: Private ordinary functions
Function, mersenne-twister-64-matrix: Private ordinary functions
Function, mersenne-twister-64-next: Private ordinary functions
Function, mersenne-twister-64-reseed: Private ordinary functions
Function, mersenne-twister-64-upper: Private ordinary functions
Function, mersenne-twister-index: Private ordinary functions
Function, middle-square-%seed: Private ordinary functions
Function, middle-square-bits: Private ordinary functions
Function, middle-square-next: Private ordinary functions
Function, middle-square-reseed: Private ordinary functions
Function, middle-square-state: Private ordinary functions
Function, murmurhash3-%seed: Private ordinary functions
Function, murmurhash3-hash: Private ordinary functions
Function, murmurhash3-index: Private ordinary functions
Function, murmurhash3-next: Private ordinary functions
Function, pcg-%seed: Private ordinary functions
Function, pcg-inc: Private ordinary functions
Function, pcg-next: Private ordinary functions
Function, pcg-reseed: Private ordinary functions
Function, pcg-state: Private ordinary functions
Function, print-histogram: Public ordinary functions
Function, random: Public ordinary functions
Function, random-1d: Public ordinary functions
Function, random-2d: Public ordinary functions
Function, random-3d: Public ordinary functions
Function, random-byte: Public ordinary functions
Function, random-bytes: Public ordinary functions
Function, random-float: Public ordinary functions
Function, random-int: Public ordinary functions
Function, random-sequence: Public ordinary functions
Function, random-unit: Public ordinary functions
Function, rc4-%seed: Private ordinary functions
Function, rc4-index1: Private ordinary functions
Function, rc4-index2: Private ordinary functions
Function, rc4-next: Private ordinary functions
Function, rc4-reseed: Private ordinary functions
Function, rc4-state: Private ordinary functions
Function, splitmix32-array: Private ordinary functions
Function, splitmix64: Private ordinary functions
Function, splitmix64-array: Private ordinary functions
Function, squirrel-%seed: Private ordinary functions
Function, squirrel-hash: Private ordinary functions
Function, squirrel-index: Private ordinary functions
Function, squirrel-next: Private ordinary functions
Function, stateful-generator-%seed: Private ordinary functions
Function, tt800-%seed: Private ordinary functions
Function, tt800-index: Private ordinary functions
Function, tt800-m: Private ordinary functions
Function, tt800-magic: Private ordinary functions
Function, tt800-matrix: Private ordinary functions
Function, tt800-n: Private ordinary functions
Function, tt800-next: Private ordinary functions
Function, tt800-reseed: Private ordinary functions
Function, xoroshiro-128**-%seed: Private ordinary functions
Function, xoroshiro-128**-next: Private ordinary functions
Function, xoroshiro-128**-reseed: Private ordinary functions
Function, xoroshiro-128**-values: Private ordinary functions
Function, xoroshiro-128++-%seed: Private ordinary functions
Function, xoroshiro-128++-next: Private ordinary functions
Function, xoroshiro-128++-reseed: Private ordinary functions
Function, xoroshiro-128++-values: Private ordinary functions
Function, xoroshiro-128+-%seed: Private ordinary functions
Function, xoroshiro-128+-next: Private ordinary functions
Function, xoroshiro-128+-reseed: Private ordinary functions
Function, xoroshiro-128+-values: Private ordinary functions
Function, xoroshiro-64**-%seed: Private ordinary functions
Function, xoroshiro-64**-magic: Private ordinary functions
Function, xoroshiro-64**-next: Private ordinary functions
Function, xoroshiro-64**-reseed: Private ordinary functions
Function, xoroshiro-64**-values: Private ordinary functions
Function, xoroshiro-64*-%seed: Private ordinary functions
Function, xoroshiro-64*-magic: Private ordinary functions
Function, xoroshiro-64*-next: Private ordinary functions
Function, xoroshiro-64*-reseed: Private ordinary functions
Function, xoroshiro-64*-values: Private ordinary functions
Function, xorshift-1024*-%seed: Private ordinary functions
Function, xorshift-1024*-index: Private ordinary functions
Function, xorshift-1024*-magic: Private ordinary functions
Function, xorshift-1024*-next: Private ordinary functions
Function, xorshift-1024*-reseed: Private ordinary functions
Function, xorshift-1024*-values: Private ordinary functions
Function, xorshift-1024*-xorshifts: Private ordinary functions
Function, xorshift-128+-%seed: Private ordinary functions
Function, xorshift-128+-next: Private ordinary functions
Function, xorshift-128+-reseed: Private ordinary functions
Function, xorshift-128+-values: Private ordinary functions
Function, xorshift-128+-xorshifts: Private ordinary functions
Function, xorshift-128-%seed: Private ordinary functions
Function, xorshift-128-next: Private ordinary functions
Function, xorshift-128-reseed: Private ordinary functions
Function, xorshift-128-values: Private ordinary functions
Function, xorshift-128-xorshifts: Private ordinary functions
Function, xorshift-32-%seed: Private ordinary functions
Function, xorshift-32-next: Private ordinary functions
Function, xorshift-32-reseed: Private ordinary functions
Function, xorshift-32-value: Private ordinary functions
Function, xorshift-32-xorshifts: Private ordinary functions
Function, xorshift-64*-%seed: Private ordinary functions
Function, xorshift-64*-magic: Private ordinary functions
Function, xorshift-64*-next: Private ordinary functions
Function, xorshift-64*-reseed: Private ordinary functions
Function, xorshift-64*-value: Private ordinary functions
Function, xorshift-64*-xorshifts: Private ordinary functions
Function, xorshift-64-%seed: Private ordinary functions
Function, xorshift-64-next: Private ordinary functions
Function, xorshift-64-reseed: Private ordinary functions
Function, xorshift-64-value: Private ordinary functions
Function, xorshift-64-xorshifts: Private ordinary functions
Function, xorshift-generator-%seed: Private ordinary functions
Function, xorshift-generator-xorshifts: Private ordinary functions
Function, xorshifts: Private ordinary functions
Function, xorwow-%seed: Private ordinary functions
Function, xorwow-counter: Private ordinary functions
Function, xorwow-next: Private ordinary functions
Function, xorwow-reseed: Private ordinary functions
Function, xorwow-values: Private ordinary functions
Function, xorwow-xorshifts: Private ordinary functions
Function, xoshiro-128**-%seed: Private ordinary functions
Function, xoshiro-128**-next: Private ordinary functions
Function, xoshiro-128**-reseed: Private ordinary functions
Function, xoshiro-128**-values: Private ordinary functions
Function, xoshiro-128++-%seed: Private ordinary functions
Function, xoshiro-128++-next: Private ordinary functions
Function, xoshiro-128++-reseed: Private ordinary functions
Function, xoshiro-128++-values: Private ordinary functions
Function, xoshiro-128+-%seed: Private ordinary functions
Function, xoshiro-128+-next: Private ordinary functions
Function, xoshiro-128+-reseed: Private ordinary functions
Function, xoshiro-128+-values: Private ordinary functions
Function, xoshiro-256**-%seed: Private ordinary functions
Function, xoshiro-256**-next: Private ordinary functions
Function, xoshiro-256**-reseed: Private ordinary functions
Function, xoshiro-256**-values: Private ordinary functions
Function, xoshiro-256++-%seed: Private ordinary functions
Function, xoshiro-256++-next: Private ordinary functions
Function, xoshiro-256++-reseed: Private ordinary functions
Function, xoshiro-256++-values: Private ordinary functions
Function, xoshiro-256+-%seed: Private ordinary functions
Function, xoshiro-256+-next: Private ordinary functions
Function, xoshiro-256+-reseed: Private ordinary functions
Function, xoshiro-256+-values: Private ordinary functions
Function, xoshiro-generator-%seed: Private ordinary functions
Function, xoshiro-rol32: Private ordinary functions
Function, xoshiro-rol64: Private ordinary functions

G
generator-p: Private ordinary functions
Generic Function, %make-generator: Private generic functions
Generic Function, bits-per-byte: Public generic functions
Generic Function, copy: Public generic functions
Generic Function, hash: Private generic functions
Generic Function, next-byte: Public generic functions
Generic Function, reseed: Public generic functions
Generic Function, rewind: Public generic functions
Generic Function, seed: Public generic functions
global-generator: Public compiler macros
global-generator: Public ordinary functions

H
hash: Private compiler macros
hash: Private generic functions
hash: Private generic functions
hash: Private generic functions
hash: Private generic functions
hash: Private generic functions
hash: Private generic functions
histogram: Public ordinary functions
hopefully-sufficiently-random-seed: Public ordinary functions

I
incfmod: Private macros
index: Public ordinary functions
intern*: Private ordinary functions

K
kiss11-%seed: Private ordinary functions
kiss11-carry: Private ordinary functions
kiss11-cng: Private ordinary functions
kiss11-j: Private ordinary functions
kiss11-next: Private ordinary functions
kiss11-q: Private ordinary functions
kiss11-reseed: Private ordinary functions
kiss11-xs: Private ordinary functions

L
linear-congruence-%seed: Private ordinary functions
linear-congruence-increment: Private ordinary functions
linear-congruence-multiplier: Private ordinary functions
linear-congruence-next: Private ordinary functions
linear-congruence-reseed: Private ordinary functions
linear-congruence-state: Private ordinary functions
list-generator-types: Public ordinary functions

M
Macro, %inner-mersenne-twister: Private macros
Macro, %inner-xoshiro: Private macros
Macro, %xorshift: Private macros
Macro, define-generator: Public macros
Macro, define-generator-fun: Private macros
Macro, incfmod: Private macros
Macro, update: Private macros
make-adler32: Private ordinary functions
make-cityhash-64: Private ordinary functions
make-generator: Public ordinary functions
make-kiss11: Private ordinary functions
make-linear-congruence: Private ordinary functions
make-load-form: Public standalone methods
make-mersenne-twister-32: Private ordinary functions
make-mersenne-twister-64: Private ordinary functions
make-middle-square: Private ordinary functions
make-murmurhash3: Private ordinary functions
make-pcg: Private ordinary functions
make-rc4: Private ordinary functions
make-squirrel: Private ordinary functions
make-tt800: Private ordinary functions
make-xoroshiro-128**: Private ordinary functions
make-xoroshiro-128+: Private ordinary functions
make-xoroshiro-128++: Private ordinary functions
make-xoroshiro-64*: Private ordinary functions
make-xoroshiro-64**: Private ordinary functions
make-xorshift-1024*: Private ordinary functions
make-xorshift-128: Private ordinary functions
make-xorshift-128+: Private ordinary functions
make-xorshift-32: Private ordinary functions
make-xorshift-64: Private ordinary functions
make-xorshift-64*: Private ordinary functions
make-xorwow: Private ordinary functions
make-xoshiro-128**: Private ordinary functions
make-xoshiro-128+: Private ordinary functions
make-xoshiro-128++: Private ordinary functions
make-xoshiro-256**: Private ordinary functions
make-xoshiro-256+: Private ordinary functions
make-xoshiro-256++: Private ordinary functions
mersenne-twister-%seed: Private ordinary functions
mersenne-twister-32-%seed: Private ordinary functions
mersenne-twister-32-index: Private ordinary functions
mersenne-twister-32-lower: Private ordinary functions
mersenne-twister-32-magic: Private ordinary functions
mersenne-twister-32-matrix: Private ordinary functions
mersenne-twister-32-next: Private ordinary functions
mersenne-twister-32-reseed: Private ordinary functions
mersenne-twister-32-upper: Private ordinary functions
mersenne-twister-64-%seed: Private ordinary functions
mersenne-twister-64-index: Private ordinary functions
mersenne-twister-64-lower: Private ordinary functions
mersenne-twister-64-magic: Private ordinary functions
mersenne-twister-64-matrix: Private ordinary functions
mersenne-twister-64-next: Private ordinary functions
mersenne-twister-64-reseed: Private ordinary functions
mersenne-twister-64-upper: Private ordinary functions
mersenne-twister-index: Private ordinary functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, %make-generator: Private generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, bits-per-byte: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, copy: Public generic functions
Method, hash: Private generic functions
Method, hash: Private generic functions
Method, hash: Private generic functions
Method, hash: Private generic functions
Method, hash: Private generic functions
Method, make-load-form: Public standalone methods
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, next-byte: Public generic functions
Method, print-object: Public standalone methods
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, reseed: Public generic functions
Method, rewind: Public generic functions
Method, rewind: Public generic functions
Method, seed: Public generic functions
Method, seed: Public generic functions
Method, seed: Public generic functions
middle-square-%seed: Private ordinary functions
middle-square-bits: Private ordinary functions
middle-square-next: Private ordinary functions
middle-square-reseed: Private ordinary functions
middle-square-state: Private ordinary functions
murmurhash3-%seed: Private ordinary functions
murmurhash3-hash: Private ordinary functions
murmurhash3-index: Private ordinary functions
murmurhash3-next: Private ordinary functions

N
next-byte: Public compiler macros
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions
next-byte: Public generic functions

P
pcg-%seed: Private ordinary functions
pcg-inc: Private ordinary functions
pcg-next: Private ordinary functions
pcg-reseed: Private ordinary functions
pcg-state: Private ordinary functions
print-histogram: Public ordinary functions
print-object: Public standalone methods

R
random: Public ordinary functions
random-1d: Public ordinary functions
random-2d: Public ordinary functions
random-3d: Public ordinary functions
random-byte: Public ordinary functions
random-bytes: Public ordinary functions
random-float: Public compiler macros
random-float: Public ordinary functions
random-int: Public ordinary functions
random-sequence: Public ordinary functions
random-unit: Public compiler macros
random-unit: Public ordinary functions
rc4-%seed: Private ordinary functions
rc4-index1: Private ordinary functions
rc4-index2: Private ordinary functions
rc4-next: Private ordinary functions
rc4-reseed: Private ordinary functions
rc4-state: Private ordinary functions
reseed: Public compiler macros
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
reseed: Public generic functions
rewind: Public compiler macros
rewind: Public generic functions
rewind: Public generic functions
rewind: Public generic functions

S
seed: Public compiler macros
seed: Public generic functions
seed: Public generic functions
seed: Public generic functions
seed: Public generic functions
splitmix32-array: Private ordinary functions
splitmix64: Private ordinary functions
splitmix64-array: Private ordinary functions
squirrel-%seed: Private ordinary functions
squirrel-hash: Private ordinary functions
squirrel-index: Private ordinary functions
squirrel-next: Private ordinary functions
stateful-generator-%seed: Private ordinary functions

T
tt800-%seed: Private ordinary functions
tt800-index: Private ordinary functions
tt800-m: Private ordinary functions
tt800-magic: Private ordinary functions
tt800-matrix: Private ordinary functions
tt800-n: Private ordinary functions
tt800-next: Private ordinary functions
tt800-reseed: Private ordinary functions

U
update: Private macros

X
xoroshiro-128**-%seed: Private ordinary functions
xoroshiro-128**-next: Private ordinary functions
xoroshiro-128**-reseed: Private ordinary functions
xoroshiro-128**-values: Private ordinary functions
xoroshiro-128++-%seed: Private ordinary functions
xoroshiro-128++-next: Private ordinary functions
xoroshiro-128++-reseed: Private ordinary functions
xoroshiro-128++-values: Private ordinary functions
xoroshiro-128+-%seed: Private ordinary functions
xoroshiro-128+-next: Private ordinary functions
xoroshiro-128+-reseed: Private ordinary functions
xoroshiro-128+-values: Private ordinary functions
xoroshiro-64**-%seed: Private ordinary functions
xoroshiro-64**-magic: Private ordinary functions
xoroshiro-64**-next: Private ordinary functions
xoroshiro-64**-reseed: Private ordinary functions
xoroshiro-64**-values: Private ordinary functions
xoroshiro-64*-%seed: Private ordinary functions
xoroshiro-64*-magic: Private ordinary functions
xoroshiro-64*-next: Private ordinary functions
xoroshiro-64*-reseed: Private ordinary functions
xoroshiro-64*-values: Private ordinary functions
xorshift-1024*-%seed: Private ordinary functions
xorshift-1024*-index: Private ordinary functions
xorshift-1024*-magic: Private ordinary functions
xorshift-1024*-next: Private ordinary functions
xorshift-1024*-reseed: Private ordinary functions
xorshift-1024*-values: Private ordinary functions
xorshift-1024*-xorshifts: Private ordinary functions
xorshift-128+-%seed: Private ordinary functions
xorshift-128+-next: Private ordinary functions
xorshift-128+-reseed: Private ordinary functions
xorshift-128+-values: Private ordinary functions
xorshift-128+-xorshifts: Private ordinary functions
xorshift-128-%seed: Private ordinary functions
xorshift-128-next: Private ordinary functions
xorshift-128-reseed: Private ordinary functions
xorshift-128-values: Private ordinary functions
xorshift-128-xorshifts: Private ordinary functions
xorshift-32-%seed: Private ordinary functions
xorshift-32-next: Private ordinary functions
xorshift-32-reseed: Private ordinary functions
xorshift-32-value: Private ordinary functions
xorshift-32-xorshifts: Private ordinary functions
xorshift-64*-%seed: Private ordinary functions
xorshift-64*-magic: Private ordinary functions
xorshift-64*-next: Private ordinary functions
xorshift-64*-reseed: Private ordinary functions
xorshift-64*-value: Private ordinary functions
xorshift-64*-xorshifts: Private ordinary functions
xorshift-64-%seed: Private ordinary functions
xorshift-64-next: Private ordinary functions
xorshift-64-reseed: Private ordinary functions
xorshift-64-value: Private ordinary functions
xorshift-64-xorshifts: Private ordinary functions
xorshift-generator-%seed: Private ordinary functions
xorshift-generator-xorshifts: Private ordinary functions
xorshifts: Private ordinary functions
xorwow-%seed: Private ordinary functions
xorwow-counter: Private ordinary functions
xorwow-next: Private ordinary functions
xorwow-reseed: Private ordinary functions
xorwow-values: Private ordinary functions
xorwow-xorshifts: Private ordinary functions
xoshiro-128**-%seed: Private ordinary functions
xoshiro-128**-next: Private ordinary functions
xoshiro-128**-reseed: Private ordinary functions
xoshiro-128**-values: Private ordinary functions
xoshiro-128++-%seed: Private ordinary functions
xoshiro-128++-next: Private ordinary functions
xoshiro-128++-reseed: Private ordinary functions
xoshiro-128++-values: Private ordinary functions
xoshiro-128+-%seed: Private ordinary functions
xoshiro-128+-next: Private ordinary functions
xoshiro-128+-reseed: Private ordinary functions
xoshiro-128+-values: Private ordinary functions
xoshiro-256**-%seed: Private ordinary functions
xoshiro-256**-next: Private ordinary functions
xoshiro-256**-reseed: Private ordinary functions
xoshiro-256**-values: Private ordinary functions
xoshiro-256++-%seed: Private ordinary functions
xoshiro-256++-next: Private ordinary functions
xoshiro-256++-reseed: Private ordinary functions
xoshiro-256++-values: Private ordinary functions
xoshiro-256+-%seed: Private ordinary functions
xoshiro-256+-next: Private ordinary functions
xoshiro-256+-reseed: Private ordinary functions
xoshiro-256+-values: Private ordinary functions
xoshiro-generator-%seed: Private ordinary functions
xoshiro-rol32: Private ordinary functions
xoshiro-rol64: Private ordinary functions


A.3 Variables

Jump to:   %   *  
B   C   I   J   L   M   N   Q   S   U   V   X  
Index Entry  Section

%
%seed: Public structures

*
*generator*: Public special variables
*generator-types*: Private special variables
*generators*: Private special variables

B
bits: Public structures

C
carry: Public structures
cng: Public structures
counter: Public structures

I
inc: Public structures
increment: Public structures
index: Public structures
index: Public structures
index: Public structures
index: Public structures
index: Public structures
index: Private structures
index1: Public structures
index2: Public structures

J
j: Public structures

L
lower: Public structures
lower: Public structures

M
m: Public structures
magic: Public structures
magic: Public structures
magic: Public structures
magic: Public structures
magic: Public structures
magic: Private structures
magic: Private structures
matrix: Public structures
matrix: Public structures
matrix: Public structures
multiplier: Public structures

N
n: Public structures

Q
q: Public structures

S
Slot, %seed: Public structures
Slot, bits: Public structures
Slot, carry: Public structures
Slot, cng: Public structures
Slot, counter: Public structures
Slot, inc: Public structures
Slot, increment: Public structures
Slot, index: Public structures
Slot, index: Public structures
Slot, index: Public structures
Slot, index: Public structures
Slot, index: Public structures
Slot, index: Private structures
Slot, index1: Public structures
Slot, index2: Public structures
Slot, j: Public structures
Slot, lower: Public structures
Slot, lower: Public structures
Slot, m: Public structures
Slot, magic: Public structures
Slot, magic: Public structures
Slot, magic: Public structures
Slot, magic: Public structures
Slot, magic: Public structures
Slot, magic: Private structures
Slot, magic: Private structures
Slot, matrix: Public structures
Slot, matrix: Public structures
Slot, matrix: Public structures
Slot, multiplier: Public structures
Slot, n: Public structures
Slot, q: Public structures
Slot, state: Public structures
Slot, state: Public structures
Slot, state: Public structures
Slot, state: Public structures
Slot, upper: Public structures
Slot, upper: Public structures
Slot, value: Public structures
Slot, value: Public structures
Slot, value: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Public structures
Slot, values: Private structures
Slot, values: Private structures
Slot, values: Private structures
Slot, values: Private structures
Slot, values: Private structures
Slot, values: Private structures
Slot, values: Private structures
Slot, xorshifts: Public structures
Slot, xorshifts: Public structures
Slot, xorshifts: Public structures
Slot, xorshifts: Public structures
Slot, xorshifts: Public structures
Slot, xorshifts: Public structures
Slot, xorshifts: Public structures
Slot, xorshifts: Private structures
Slot, xs: Public structures
Special Variable, *generator*: Public special variables
Special Variable, *generator-types*: Private special variables
Special Variable, *generators*: Private special variables
state: Public structures
state: Public structures
state: Public structures
state: Public structures

U
upper: Public structures
upper: Public structures

V
value: Public structures
value: Public structures
value: Public structures
values: Public structures
values: Public structures
values: Public structures
values: Public structures
values: Public structures
values: Public structures
values: Public structures
values: Public structures
values: Private structures
values: Private structures
values: Private structures
values: Private structures
values: Private structures
values: Private structures
values: Private structures

X
xorshifts: Public structures
xorshifts: Public structures
xorshifts: Public structures
xorshifts: Public structures
xorshifts: Public structures
xorshifts: Public structures
xorshifts: Public structures
xorshifts: Private structures
xs: Public structures


A.4 Data types

Jump to:   A   C   D   F   G   H   I   K   L   M   P   R   S   T   X  
Index Entry  Section

A
adler32: Public structures
adler32.lisp: The random-state/adler32․lisp file

C
cityhash-64: Public structures
cityhash.lisp: The random-state/cityhash․lisp file

D
documentation.lisp: The random-state/documentation․lisp file

F
File, adler32.lisp: The random-state/adler32․lisp file
File, cityhash.lisp: The random-state/cityhash․lisp file
File, documentation.lisp: The random-state/documentation․lisp file
File, generator.lisp: The random-state/generator․lisp file
File, implementation.lisp: The random-state/implementation․lisp file
File, kiss.lisp: The random-state/kiss․lisp file
File, linear-congruence.lisp: The random-state/linear-congruence․lisp file
File, mersenne-twister.lisp: The random-state/mersenne-twister․lisp file
File, middle-square.lisp: The random-state/middle-square․lisp file
File, murmurhash.lisp: The random-state/murmurhash․lisp file
File, package.lisp: The random-state/package․lisp file
File, pcg.lisp: The random-state/pcg․lisp file
File, protocol.lisp: The random-state/protocol․lisp file
File, random-state.asd: The random-state/random-state․asd file
File, rc4.lisp: The random-state/rc4․lisp file
File, squirrel.lisp: The random-state/squirrel․lisp file
File, toolkit.lisp: The random-state/toolkit․lisp file
File, tt800.lisp: The random-state/tt800․lisp file
File, xorshift.lisp: The random-state/xorshift․lisp file

G
generator: Public structures
generator.lisp: The random-state/generator․lisp file

H
hash-generator: Public structures

I
implementation.lisp: The random-state/implementation․lisp file

K
kiss.lisp: The random-state/kiss․lisp file
kiss11: Public structures

L
linear-congruence: Public structures
linear-congruence.lisp: The random-state/linear-congruence․lisp file

M
mersenne-twister: Private structures
mersenne-twister-32: Public structures
mersenne-twister-64: Public structures
mersenne-twister.lisp: The random-state/mersenne-twister․lisp file
middle-square: Public structures
middle-square.lisp: The random-state/middle-square․lisp file
murmurhash.lisp: The random-state/murmurhash․lisp file
murmurhash3: Public structures

P
Package, random-state: The random-state package
package.lisp: The random-state/package․lisp file
pcg: Public structures
pcg.lisp: The random-state/pcg․lisp file
protocol.lisp: The random-state/protocol․lisp file

R
random-state: The random-state system
random-state: The random-state package
random-state.asd: The random-state/random-state․asd file
rc4: Public structures
rc4.lisp: The random-state/rc4․lisp file

S
squirrel: Public structures
squirrel.lisp: The random-state/squirrel․lisp file
stateful-generator: Public structures
Structure, adler32: Public structures
Structure, cityhash-64: Public structures
Structure, generator: Public structures
Structure, hash-generator: Public structures
Structure, kiss11: Public structures
Structure, linear-congruence: Public structures
Structure, mersenne-twister: Private structures
Structure, mersenne-twister-32: Public structures
Structure, mersenne-twister-64: Public structures
Structure, middle-square: Public structures
Structure, murmurhash3: Public structures
Structure, pcg: Public structures
Structure, rc4: Public structures
Structure, squirrel: Public structures
Structure, stateful-generator: Public structures
Structure, tt800: Public structures
Structure, xoroshiro-128**: Private structures
Structure, xoroshiro-128+: Private structures
Structure, xoroshiro-128++: Private structures
Structure, xoroshiro-64*: Private structures
Structure, xoroshiro-64**: Private structures
Structure, xorshift-1024*: Public structures
Structure, xorshift-128: Public structures
Structure, xorshift-128+: Public structures
Structure, xorshift-32: Public structures
Structure, xorshift-64: Public structures
Structure, xorshift-64*: Public structures
Structure, xorshift-generator: Private structures
Structure, xorwow: Public structures
Structure, xoshiro-128**: Public structures
Structure, xoshiro-128+: Public structures
Structure, xoshiro-128++: Private structures
Structure, xoshiro-256**: Public structures
Structure, xoshiro-256+: Public structures
Structure, xoshiro-256++: Private structures
Structure, xoshiro-generator: Private structures
System, random-state: The random-state system

T
toolkit.lisp: The random-state/toolkit․lisp file
tt800: Public structures
tt800.lisp: The random-state/tt800․lisp file

X
xoroshiro-128**: Private structures
xoroshiro-128+: Private structures
xoroshiro-128++: Private structures
xoroshiro-64*: Private structures
xoroshiro-64**: Private structures
xorshift-1024*: Public structures
xorshift-128: Public structures
xorshift-128+: Public structures
xorshift-32: Public structures
xorshift-64: Public structures
xorshift-64*: Public structures
xorshift-generator: Private structures
xorshift.lisp: The random-state/xorshift․lisp file
xorwow: Public structures
xoshiro-128**: Public structures
xoshiro-128+: Public structures
xoshiro-128++: Private structures
xoshiro-256**: Public structures
xoshiro-256+: Public structures
xoshiro-256++: Private structures
xoshiro-generator: Private structures