An implementation of untyped and simply typed lambda calculus with support for parsing, printing and evaluation. The parser and is geared towards an untyped or ET-typed calculus as often used in linguistics, but the system itself is more general and will allow you to use any type (though you'll have to adapt the parser). It's also a bit slow.
(c) 2013 Wen Kokke
Disclaimer: this is an embarrassing implementation of the Lambda Calculus in Java, but I'm gonna leave it up anyway 😂