Object-oriented programming. An evolutionary approach - Cox, BJ (Addison-Wesley, 1987)