<div dir="ltr">On Fri, Sep 23, 2016 at 3:00 PM, Simon Peyton Jones <span dir="ltr"><<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">





<div lang="EN-GB">
<div><span>
<p class="MsoNormal" style="margin-left:36pt">Interesting. Is this case also an example, or is it a non-feature?<u></u><u></u></p>
<p class="MsoNormal" style="margin-left:36pt"><u></u> <u></u></p>
<p class="MsoNormal" style="margin-left:36pt">class C t where<u></u><u></u></p>
<p class="MsoNormal" style="margin-left:36pt">    type K t :: Type<u></u><u></u></p>
<p class="MsoNormal" style="margin-left:36pt">    type T t :: K t -> Type<u></u><u></u></p>
<p class="MsoNormal" style="margin-left:36pt"><u></u> <u></u></p>
<p class="MsoNormal" style="margin-left:36pt">    m :: t -> T t a<u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:calibri,sans-serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:calibri,sans-serif"><u></u> <u></u></span></p>
</span><p class="MsoNormal"><span style="font-size:11pt;font-family:calibri,sans-serif">Ah, that’s quite different!  We should do strongly-connected-component analysis of the associated-type declarations within a single class declaration….
 but we don’t currently do that.   No difficulty in principle, I think.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:calibri,sans-serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:calibri,sans-serif">You could open a ticket.   (Do include a link to this email thread and to #12088)</span></p></div></div></blockquote><div><br></div><div>I’ve opened ticket #12612 <<a href="https://ghc.haskell.org/trac/ghc/ticket/12612">https://ghc.haskell.org/trac/ghc/ticket/12612</a>>.</div><div><br></div><div>Assuming GHC accepted this definition, would the Template Haskell trick (or whatever replaces it) allow defining instances of C?</div><div><br></div></div>-- <br><div>Dave Menendez <<a href="mailto:dave@zednenem.com" target="_blank">dave@zednenem.com</a>><br><<a href="http://www.eyrie.org/~zednenem/" target="_blank">http://www.eyrie.org/~<wbr>zednenem/</a>></div>
</div></div>