Modern scoped type variables: extension shuffling
The accepted GHC Proposal #448 "Modern scoped type variables" contains a section on "Extension shuffling" that redistributes responsibility of ScopedTypeVariables extension between new ones, introduces new extension and warning, in particular:
-
PatternSignaturesallows user to write signatures in patterns -
MethodTypeVariablesgives variables from the instance head into method scope -
ExtendedForAllScopegives anyforall'ed type variables into expression scope -
ImplicitForAllallows user to turn on/off implicitforallcreation -
-Wpattern-signature-bindswarns if pattern signature binds a type variable