You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
depsterr c7eac71a2d update expectations in readme 1 month ago
src align arrows 2 months ago
tests update readme 2 months ago
.gitignore initial commit 5 months ago
README.md update expectations in readme 1 month ago
makefile definition system, repl 2 months ago
pi.ipkg definition system, repl 2 months ago

README.md

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

  • Martin-Löf Identity types

Lacking

Here are some things which are not present but could be.

This project has served me well by teaching me about typechecking dependently typed systems. It's likely that the features listed below will not be implemented as I'll move onto other projects and learn more about elaboration.

  • Universes

    • a la tarksi
  • Inductives

    • W types
    • Indexed inductives
  • Elaboration

    • Implicit arguments
    • Universe family application
      • Syntax level russel universes
      • Universe of all other universes? (universe polymorphism)

References

Some of the material I found helpful in groking dependent type checking: