[Haskell-cafe] Using deriving with indexed data types