Chapter 5. Patterns of Type Abstraction
In the previous chapter, we explored several ways in which the Haskell 98 language has been evolving via new libraries. This chapter brings to focus some key advances on another major front of Haskell's evolution: language extensions.
"Haskell's type system has developed extremely anarchically. Many of the new features were sketched, implemented, and applied well before they were formalized. This anarchy has both strengths and weaknesses. The strength is that the design space is explored much more quickly the weakness is that the end result is extremely complex, and programs are sometimes reduced to experiments to see what will and will not be acceptable to the compiler."
|--Hudak et al., History of Haskell ...|