[GHC] #7485: Tuple constraints not properly kinded
GHC
cvs-ghc at haskell.org
Fri Dec 7 09:57:56 CET 2012
#7485: Tuple constraints not properly kinded
-------------------------------+--------------------------------------------
Reporter: goldfire | Owner:
Type: bug | Status: closed
Priority: normal | Milestone:
Component: Compiler | Version: 7.7
Resolution: invalid | Keywords: ConstraintKinds
Os: Unknown/Multiple | Architecture: Unknown/Multiple
Failure: None/Unknown | Difficulty: Unknown
Testcase: | Blockedby:
Blocking: | Related:
-------------------------------+--------------------------------------------
Changes (by simonpj):
* status: new => closed
* difficulty: => Unknown
* resolution: => invalid
Comment:
I think that is as expected. In the source language at least, `*` and
`Constraint` are distict kinds. So `(,)` has to have a particular kind,
and it's `* -> * -> *`. However the distfix syntax version `(a,b)` has
special treatment so that we can use the same syntax for type tuples and
constraint tuples.
It's not dissimilar to `(->)`. You can write `Int# -> Int`, but `(->)` as
a separate type constructor has the more restrictive kind `(->) :: * -> *
-> *`.
I'm open to improvements. And/or suggested documentation.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7485#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list