Generics
• Approach to simplify and reuse
(remember lazy programmer).
• Focuses on finding commonality
among similar implementations of the
same algorithm.
• Providing suitable abstractions so that
a single, generic algorithm can cover
many concrete implementations.