[Haskell] Associated data types in GHC