Foundations of Object-Oriented Programming Languages : Types and Semantics - Bruce, Kim B. (MIT Press, 2002)