Types are theorems; programs are proofs

Length: 60 minutes

Description

a -> (b -> b) a -> (b -> a) a -> (a -> b) -> b

a -> (a -> b) (a -> b) -> a (a -> b) -> b

There is a function of type T if and only if T, reinterpreted as a statement of logic, is a true statement.

This is the foundation for more complex, dependently-typed languages such as Agda where the type of a program P are understood explicitly as assertions about the behavior of P.



Outline

Return to: Universe of Discourse main page | Perl Paraphernalia | Other Classes and Talks

mjd-perl-yak+@plover.com