P = λ( self ).{i = 5, id = self}
C = λ( self ).P( self ) \with {b = true}
\Y(P):τ where τ = μα.{i:int, id:α} and P:τ→ τ
Simple typing - \Y(C):σ = {i:int, id:τ, b:bool}
Delayed - \Y(C):σ′ = μα.{i:int, id:α, b:bool}
We have σ′\leqslant σ
slide: Object inheritance -- dynamic binding