lambd
Parser-reducer for the lambda calculus, with a dash of syntax sugar.
There are Haskell and Python implementations. The Python implementation is around 6 or 7 years older and considerably slower, but is included here for historical purposes.
Haskell Usage
lambd [file]
If file is provided, reduce the lambda expression in the named file. Otherwise, reduce the expression read from stdin.
$ cd haskell
$ make
$ ./lambd tests/math.lambd
@@churchnums.[ 5040(@f.f 3 30) ]
Python Usage
lambd.py [module]
If module is provided, reduce the main
in the named module.
Otherwise, reduce the expression read from stdin.
$ cd python
$ ./lambd.py tests/math
@@churchnums.[ 120(@f.f 3 3) ]
calculated in 1012 cycles
0.179032885 CPU s
0.17912530899047852 s