Skip to content

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:

  • PatternSignatures allows user to write signatures in patterns
  • MethodTypeVariables gives variables from the instance head into method scope
  • ExtendedForAllScope gives any forall'ed type variables into expression scope
  • ImplicitForAll allows user to turn on/off implicit forall creation
  • -Wpattern-signature-binds warns if pattern signature binds a type variable
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information