Overview
This course aims to explain the importance of algebraic data types in programming. The learning outcomes include understanding the connection between type theory, category theory, and logic. The course covers topics such as systematic type theory, abstracting over types, products, sums, exponentials, unit, and algebraic identities. The teaching method involves discussing elements of type theory in a theoretical and conceptual manner. This course is intended for individuals interested in functional programming languages like Haskell or ML, and those looking to deepen their understanding of type systems in programming.
Syllabus
Intro
The problem
Systematic type theory
Abstracting over types
Products
Sums
Exponentials
Unit
Algebraic identities
Taught by
code::dive conference