Permuted congruential generators in Common Lisp
Common Lisp Makefile
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
build
docs
src
test
vendor
.ffignore
.hgignore
.hgtags
.lispwords
LICENSE.markdown
Makefile
README.markdown
cl-pcg.asd
cl-pcg.test.asd
package.lisp
package.test.lisp

README.markdown

cl-pcg is a permuted congruential generator implementation in pure Common Lisp.

Permuted congruential generators are seedable, small, fast, fairly-hard-to-predict random number generators. They can be useful for things like games. They can also be advanced and rewound efficiently.

PCGs are not cryptographically secure. If you need that, look elsewhere.

Testing with Dieharder

There's a Roswell script you can use to make a little executable that will spew random bytes to stdout, suitable for piping into dieharder:

make build/pcg
./build/pcg | dieharder -a -g 200

build/pcg will dump out infinite random bytes until stdout breaks, so maybe don't run it in a bare terminal unless you want to just totally hose it.