No description
Find a file
2025-05-11 17:55:50 -04:00
.woodpecker.yaml Add README.md 2025-04-29 18:17:49 -04:00
nbe-test.rkt Add back peano numbers 2025-05-11 17:55:50 -04:00
nbe.rkt Add back peano numbers 2025-05-11 17:55:50 -04:00
README.md minor 2025-04-29 18:18:55 -04:00

Kripke-style untyped NbE in racket

status-badge

An implementation of normalization by evaluation loosely based on A Denotational Account of Untyped Normalization by Evaluation and Abel's thesis on NbE.

Since the implementation is untyped, the normalize function only gives you β-normal forms. However, you can get a little bit of βη-equivalence by invoking Coquand's algorithm (η-eq?) on β-normal forms.

I'm hoping to expand the repository into a benchmark suite where I can visualize the performance trade-off of type-directed NbE compared to untyped NbE composed with Coquand's algorithm.