kirancodes.me
To Proof Maintenance & Beyond!

The power of Pi

Nicolas Oury, Wouter Swierstra

Abstract

This paper exhibits the power of programming with dependent types by dint of embedding three domain-specific languages: Cryptol, a language for cryptographic protocols; a small data description language; and relational algebra. Each example demonstrates particular design patterns inherent to dependently-typed programming. Documenting these techniques paves the way for further research in domain-specific embedded type systems.

Related papers