849 B
849 B
pi
A dependently typed system
Implemented
A Basic dependent lambda calculus
- lambda abstractions
- variables
- pi types
- type of types
let … in …
Unit type
Empty type
Natural numbers
Σ Types
TODO
Parser
Fun types
- Id
Repl
Universes
Performence optimisation
- Memoize normalisation and conversion somehow?
Implicit arguments
(indexed) inductive datatypes
Write down the rules (I’ll not get this far)
Compile to scheme
References
Some of the material I found helpful in groking dependent type checking:
Coquand, Thierry. “An Algorithm for Type-Checking Dependent Types.” Science of Computer Programming 26, no. 1–3 (May 1996): 167–77. https://doi.org/10.1016/0167-6423(95)00021-6.
Brady, Edwin. “SPLV20 course notes”. GitHub. https://github.com/edwinb/SPLV20