1 Type system extensions in GHC
GHC comes with a rather large collection of type-system extensions (beyond Haskell 98). They are all documented in the user manual, but this page is a place to record observations, notes, and suggestions on them.
1.1 Overlapping instances
Here an interesting message about the interaction of existential types and overlapping instances.
1.2 Indexed data types and indexed newtypes
Indexed data types (including associated data types) are a very recent addition to GHC's type system extensions that is not yet included in the user manual. To use the extension, you need to obtain a version of GHC from its source repository.