pi/README.md

1022 B
Raw Blame History

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

TODO

  • Universes (a la tarksi)

  • Elaboration

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

    • Indexed inductives

Things that could be fun to do sometime eventually

  • Pattern matching in elaborator

  • Write down the rules

  • Performence optimisation?

  • Compile to scheme

References

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