Skip to content

EqualityConstraints extension?

At the moment, writing an equality constraint in a type requires at least one of the GADTs or TypeFamilies extensions. However, each of these has other effects. Could we have an EqualityConstraints extension to permit equality constraints in types, but neither GADTs nor type families? Presumably this extension should imply MonoLocalBinds.

The GADTs extension could then become precisely the conjunction of GADTSyntax, EqualityConstraints and ExistentialQuantification.

Trac metadata
Trac field Value
Version 7.11
Type FeatureRequest
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler (Type checker)
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information