basic lambda calculus evaluator and debugger
| src | ||
| test | ||
| .envrc | ||
| .gitignore | ||
| cabal.project | ||
| flake.lock | ||
| flake.nix | ||
| lamb.cabal | ||
| README.md | ||
| test.lm | ||
Lamb
A (very WIP) lambda expression evaluator and debugger.
I'd like to build the following:
- parsing with parsec
- alpha/beta reduction to beta normal
- substitutions for known abstractions (numbers can be written and are displayed as numbers rather than lambda terms)
- replace known terms in input
- replace known terms in output
- support detection and replacement for generic church numerals (not just 1 and 0 (false))
- persisted variables
- display all steps in alpha/beta reductions until beta normal form is reached
- online web-based lambda playground