Playlist | schedule page slides as PDF |
Inference 1 — introduction (1:15)
Introduction to type inference.
Inference 2 — type inference (3:07)
Basic type inference in action.
Inference 3 — function calls (1:46)
Type inference for function calls.
Inference 4 — occurs check (1:21)
Type inference needs to avoid creating cyclic type equivalences, which could otherwise happen for expressions that have no type.
Inference 5 — unification (5:11)
Unification is the algorithm for assigning types to type variables.
Inference 6 — type variables (1:33)
Representing type variables in our new, inferencing type checker.
Inference 7 — unify! examples (4:17)
Examples for the unify! function that implements unification.
Inference 8 — unify! (3:38)
Implementing unify!.
Inference 9 — typecheck (2:26)
Updating typecheck to use unify!. See infer-lambda.rkt.