
Dear committee
I strongly propose that we accept Treat kind and type vars identically with `forall` #103
Agreed, unsurprisingly.
There seems to be consensus. We accept! I proposed this:
Moreover, I propose that we adopt it without a 3-release wait after #83 – see under Alternatives. Any programs that are rejected by #103 can be fixed by adding some extra forall k’s. And that change will be accepted NOW if you add -XTypeInType.
But Richard and Manual disagreed:
Here I disagree. Enabling -XTypeInType has two unfortunate knock-on effects: - * is no longer available in kinds, without import Data.Kind. Happily, GHC gives a good error message upon a forgotten `import Data.Kind`, so this isn't so bad, but it will bite very widely. - More troublesomely, the CUSK rules are different with -XTypeInType than without. This means that turning on -XTypeInType can turn some CUSKs into non-CUSKs, producing utterly befuddling error messages. Maybe this won't bite so often, but when it does, it will take a developer a long time to sort out the problem.
After #83, these problems melt away, but I think it will be painful for users to support multiple versions in the meantime.
So let's accept the proposal as-is, i.e. with the 3-release wait. Simon