Types and Inductive RelationsDiscusses the importance of types, unsound type systems, and inductively defined relations for a small language's type system.
Polymorphism and ProofsCovers parametric polymorphism, lists construction, tuples, generic methods, merge sort, and proving program properties.
Subtyping and PolymorphismExplores subtyping rules, challenges, and its connection to various forms of polymorphism in programming languages.