diff options
author | JJ | 2024-06-16 04:03:28 +0000 |
---|---|---|
committer | JJ | 2024-06-16 04:03:28 +0000 |
commit | 4906ecb9802c7e9889a8399b3cf2553d0daa5d6c (patch) | |
tree | 89ad219bfa210c21d16e54ebfcc74bf0f8f487c4 | |
parent | 89441782686eeddc86b60e0c5c3e061459adcdf0 (diff) |
update readme
-rw-r--r-- | README.md | 24 |
1 files changed, 23 insertions, 1 deletions
@@ -2,4 +2,26 @@ Various implementations of the lambda calculus (and friends). -The code here is hopefully pretty readable: but makes heavy use of quasiquoting. For an introduction, see [*Explaining Lisp's quoting without getting tangled*](https://cadence.moe/blog/2022-10-17-explaining-lisp-quoting-without-getting-tangled). +The code here is hopefully pretty readable: but makes heavy use of quasiquoting. +For an introduction, see [*Explaining Lisp's quoting without getting tangled*](quasiquoting). + +* [~] LC: The untyped lambda calculus. +* [x] STLC: The simply-typed lambda calculus. +* [x] STLC-ext: Simple extensions. Sums, products, lists, ascryptions. +* [ ] STLC-fix: General recursion. +* [ ] STLC-sub: Subtyping. Structural records, intersective unions, implicit typeclasses, ⊤, ⊥. +* [ ] STLC-rec: Recursive types. Also sums, products, ascryption. +* [x] STLC-ref: References. +* [x] STLC-pred: Higher-order *predicative* references. Terminating. +* [ ] STLC-imp: Higher-order *impredicative* references. Terminating. +* [ ] STLC-rc: References with reference counting. +* [ ] STLC-gc: References with a tracing garbage collector. +* [ ] STLC-own: References with Rust-style ownership. +* [ ] STLC-eff: Effects. +* [ ] STLC-class: Typeclasses +* [~] SKI: The SKI combinator calculus. +* [~] Iota, Jot, Zot: Implementations of Chris Barker's languages. +* [~] Aviary: Various combinators and constructions of equivalence. + + +[quasiquoting]: https://cadence.moe/blog/2022-10-17-explaining-lisp-quoting-without-getting-tangled |