μPerm is a block-structured, dynamically typed, dynamically scoped, interpreted programming language for computation in the mathematical realm of the symmetric groups. In particular, μPerm provides as a primitive type the permutation, along with its related group-theoretic operations of composition and inversion.
~/doc
Contains the Language Reference Manual.
~/bin
Contains Java .jars for ANTLR (µPerm uses v2.7.7) and uperm.jar, the µPerm interpreter. Requires Java 5.x.
~/src
Contains µPerm source code, including the grammar, uperm.g, and all java source files used to build ~/bin/uperm.jar.
~/samples
Contains various sample µPerm programs. The most complex is our implementation of Dimino's algorithm under ~/samples/dimino.