id,summary,reporter,owner,description,type,status,priority,milestone,version,resolution,keywords,cc
85,show kind signatures for (gadt) type constructors,rwbarton@…,,"I like to write GADT declarations in the following style:
{{{
{-# LANGUAGE GADTs, KindSignatures #-}
data Foo :: (* -> *) -> * -> * where
  Bar :: f x -> Foo f (f x)
}}}
so I don't give (necessarily unused) names to the type parameters of the type constructor `Foo`.  If I don't export the data constructors of `Foo` but only `Foo` itself then the documentation generated by Haddock consists solely of
{{{
data Foo
}}}

This is uninformative and potentially misleading (it seems to suggest that `Foo` has kind `*`).  It would be better to produce
{{{
data Foo :: (* -> *) -> * -> *
}}}


This is a particularly bad set of circumstances (no constructors for the reader to infer the kind from) but in general I think it would be nice to preserve any kind signatures written in the program source.",enhancement,new,minor,,2.5.0,,,mmitar@…
