This directory contains an Unlamba interpreter written in Java. This
is presumably the most pedagogical one, and it is *very* lengthily
commented, so you should probably start by reading it if you want to
know how an Unlambda interpreter is to be written. This directory
also contains the compiled Java classes for this interpreter (to run
it, put them in a directory called unlambda/ below your classpath, and
run the Execute.main method).
The source is in unlambda.java (yes, I know I should have written one
source file per class, but this is just sooo pointless). The ,v file
is the associated RCS version control file. The .java files are the
(bytecode) compiled classes.
This should work with any version of Java.
If you need to (re)compile the source, do
To run it, put the files in $SOMEWHERE/unlambda/ where $SOMEWHERE is
in your $CLASSPATH, and run
java unlambda.Execute inputfile.unl
where inputfile.unl is the Unlambda source program. If no file is
specified, the interpreter will read it from the standard input (in
which case the program's input, if any, should come after the program