So when we said that haskell is good for abstraction, what did we actually mean? Do we have something like java generics or C++ templates? \vspace{\baselineskip} \\ \pause Even better! Haskell supports polymorphism for both data types and functions.