In type-level heavy code, with type-families and
PolyKinds etc I consider having kind signatures everywhere good style. c.f.
-Wmissing-signatures for type signatures.
I don't think we can have that warning in
-Wall though, because
class Functor (f :: Type -> Type) where
is not good. This warning would have a lot of "false" positives in "Haskell2010" code, where we cannot add standalone kind signatures, nor make declarations CUSK.
Yet, in type-level heavy code this would be useful.
I'll try to implement this warning.
Ryan gave me a hint:
As far as how to implement it, look in
compiler/GHC/Tc/Gen/HsType.hs> There are functions named