Compare commits
No commits in common. "efbd7bbcd5f6e94dfaeacbd9d44ec37d2f734cf2" and "d897ccce099e2f0a292caa6c4df1573cb214c8d7" have entirely different histories.
efbd7bbcd5
...
d897ccce09
1 changed files with 3 additions and 4 deletions
|
@ -1,15 +1,14 @@
|
||||||
# Kripke-style untyped NbE in racket
|
# Kripke-style untyped NbE in racket
|
||||||
[](https://woodpecker.electriclam.com/repos/4)
|
[](https://woodpecker.electriclam.com/repos/4)
|
||||||
|
|
||||||
An implementation of normalization by evaluation loosely based on [A
|
An implementation of normalization by evaluation loosely based on [A
|
||||||
Denotational Account of Untyped Normalization by
|
Denotational Account of Untyped Normalization by
|
||||||
Evaluation](https://www.brics.dk/RS/03/40/BRICS-RS-03-40.pdf) and
|
Evaluation](https://www.brics.dk/RS/03/40/BRICS-RS-03-40.pdf) and
|
||||||
[Abel's thesis on NbE](https://www.cse.chalmers.se/~abela/habil.pdf).
|
[Abel's thesis on NbE](https://www.cse.chalmers.se/~abela/habil.pdf).
|
||||||
|
|
||||||
Since the implementation is untyped, the `normalize` function only
|
Since the implementation is untyped, the `normalize` function only
|
||||||
gives you β-normal forms. However, you can get a little bit of
|
gives you $\beta$-normal forms. However, you can get a little bit of
|
||||||
βη-equivalence by invoking Coquand's algorithm (`η-eq?`) on
|
$\beta\eta$-equivalence by invoking Coquand's algorithm (`η-eq?`) on
|
||||||
β-normal forms.
|
$\beta$-normal forms.
|
||||||
|
|
||||||
I'm hoping to expand the repository into a benchmark suite where I can
|
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
|
visualize the performance trade-off of type-directed NbE compared to
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue