[Haskell] Higher types in contexts

Barney Hilken b.hilken at ntlworld.com
Mon Mar 5 13:21:36 CET 2012

Is there any deep reason why I can't write a polymorphic type in a context? I think the record update problem can be (sort of) solved if you could write:

class Has r Rev (forall a. [a] -> [a]) => HRClass r where
	setHRClass :: (forall a.[a] -> [a]) -> r -> r

but polymorphic types are not allowed in contexts. Is this one of the problems SPJ considers "Hard" or is it a feasible extension?


More information about the Haskell mailing list