[GHC] #6093: Kind polymorphism fails with recursive type definition using different kind
GHC
cvs-ghc at haskell.org
Wed May 23 07:25:15 CEST 2012
#6093: Kind polymorphism fails with recursive type definition using different kind
----------------------------------------+-----------------------------------
Reporter: Ashley Yakeley | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler (Type checker) | Version: 7.4.1
Keywords: | Os: Unknown/Multiple
Architecture: Unknown/Multiple | Failure: GHC rejects valid program
Difficulty: Unknown | Testcase:
Blockedby: | Blocking:
Related: |
----------------------------------------+-----------------------------------
Comment(by Ashley Yakeley):
Just to be clear, IOWitness is also polykinded. (It has to be, so I can
for instance represent "Maybe Bool".)
{{{
IOWitness : k -> *
}}}
So I think it should be this:
{{{
Type :: forall k. k -> *
SimpleType :: forall k. forall (a:k). IOWitness k a -> Type k a
ConstructedType :: forall k k2. forall (f:k2->k) (a:k2).
Type (k2->k) g -> Type k2 a -> Type k (f a)
}}}
This should be possible, should it not?
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/6093#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list