FP + OOP = Haskell. The programming language Haskell adds object-oriented functionality (using a concept
known as
type classes
) to a pure functional programming framework. This paper describes
these extensions and analyzes its accomplishments as well as some problems.