On Understanding Types, Data Abstraction, and Polymorphism (1985) [pdf] | Hacker News Reader