https://github.com/414owen/pure-lambda
Lambda calculus expression simplifier repl
https://github.com/414owen/pure-lambda
bison flex functional lambda lambda-calculus lambda-expressions math mathematics parser-generator
Last synced: 8 months ago
JSON representation
Lambda calculus expression simplifier repl
- Host: GitHub
- URL: https://github.com/414owen/pure-lambda
- Owner: 414owen
- Created: 2018-10-22T23:39:24.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-11-10T14:20:46.000Z (over 7 years ago)
- Last Synced: 2025-02-03T13:27:08.292Z (about 1 year ago)
- Topics: bison, flex, functional, lambda, lambda-calculus, lambda-expressions, math, mathematics, parser-generator
- Language: C
- Homepage: https://owen.cafe/try-lambda/
- Size: 24.4 KB
- Stars: 2
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Lambda REPL
A lambda expression parser and step-by-step evaluator.
Build dependencies: readline headers
### To build:
```bash
$ make
```
### To Run:
```
./lambda
```
### Usage:
Enter lambda expressions in the following notation:
```
> a
a
> aa
aa
> ab
ab
> \a.a
a->a
> (\a.a)b
(a->a)b
b
> (\a.ab)c
(a->ab)c
cb
> (\a.a)(\b.b)
(a->a)(b->b)
b->b
> (\a.a)\a.a
(a->a)(a->a)
a->a
> (\a.aa)(\b.b)
(a->aa)(b->b)
(b->b)(b->b)
b->b
> (\a.aaaa)(\b.b)
(a->aaaa)(b->b)
(b->b)(b->b)(b->b)(b->b)
(b->b)(b->b)(b->b)
(b->b)(b->b)
b->b
> (\a.a)(\b.b)(\c.cc)da
(a->a)(b->b)(c->cc)da
(b->b)(c->cc)da
(c->cc)da
dda
> (\a.(\b.bb)a)a
(a->(b->bb)a)c
(b->bb)c
cc
> \abc.cba
a->b->c->cba
> (\ab.ba)\cc.c
(a->b->ba)(c->c->c)
b->b(c->c->c)
```