Type inference as constraint solving: how GHC’s type inference engine actually works

Zurihac keynote talk

Related File

The Haskell compiler GHC includes a type inference engine for a rather sophisticated type system.  You might worry that a complicated type system leads to a very complicated type inference engine.   You’d be right, but we have learned a lot about how to structure type inference so that the complexity does not get out of control.

In this talk, given at Zurihac 2019, I explain how GHC’s type inference engine actually works by first generating constraints and then solving them.

Here are