1. A Theory of Objects;Abadi,1996
2. Component Software – Beyond Object-Oriented Programming;Szyperski,2002
3. Design Patterns: Elements of Reusable Object-Oriented Software;Gamma,1995
4. Generic programming;Musser,1989
5. Generics for the masses;Hinze,2004