[Haskell] Polymorphic types in RHS of type instances

Simon Peyton-Jones simonpj at microsoft.com
Mon Apr 4 13:14:01 CEST 2011

Can you give an example of what you'd like to write, but can't?


From: glasgow-haskell-users-bounces at haskell.org [mailto:glasgow-haskell-users-bounces at haskell.org] On Behalf Of José Pedro Magalhães
Sent: 04 April 2011 10:53
To: GHC users
Cc: Steven Keuchel
Subject: Re: [Haskell] Polymorphic types in RHS of type instances


[Moving to glasgow-haskell-users at haskell.org<mailto:glasgow-haskell-users at haskell.org>]

I would also like to know the answer to this question. While I can imagine it has something to do with type checking/inference, it is not immediately clear to me where the problem lies.

On Sat, Feb 5, 2011 at 12:25, Steven Keuchel <steven.keuchel at gmail.com<mailto:steven.keuchel at gmail.com>> wrote:
Hi list,

I was wondering why GHC doesn't allow usage of polymorphic types in
the right-hand side of type instance declarations for type families.
The GHC user guide states: "The right-hand side of a type instance
must be a monotype (i.e., it may not include foralls) [...]", but it
doesn't state the reason.

I stumbled upon this limitation when I was trying to generically
calculate Johann's and Ghani's interpreter (transformers) for nested
data types from their "Initial Algebra Semantics is Enough!" paper.


Haskell mailing list
Haskell at haskell.org<mailto:Haskell at haskell.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/glasgow-haskell-users/attachments/20110404/1c69bd32/attachment.htm>

More information about the Glasgow-haskell-users mailing list