How do you explain `forall (r :: RuntimeRep) (a :: *) (b :: TYPE r).` using simple english?
"for all 'a's that are lifted types and 'b's that are types of any runtime representation 'r'..."
I don't really want to argue what is "simple english". I'd agree that Haskell's syntax is becoming more and more inadequate for expressing ideas that are being introduced to the language, though.