<p>&nbsp;We already could write and compile next code:</p><p>{-# LANGUAGE PolyKinds, FlexibleContexts, TypeFamilies #-}</p><p>
{-# LANGUAGE 
&nbsp;FlexibleInstances, UndecidableInstances #-}</p><p>class Monoid (a :: k) where<br>&nbsp;type Pr a :: *<br>&nbsp;mempty :: PA a<br>&nbsp;mappend :: Pr a -&gt; Pr a -&gt; Pr a<br><br>        <br>instance Monoid [b] where <br>&nbsp;type Pr [b] = [b]<br>        mempty = [] <br>        mappend = (++)<br>&nbsp;<br>instance (Monad m, MonadPlus m) =&gt; Monoid ( m :: * -&gt; * ) where&nbsp;<br>type Pr m = m Int &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -- Unfortunally, we can't write now 
type Pr m = 

forall b. m b
</p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;--Illegal polymorphic or qualified type: forall b. m b<br>        mempty = mzero<br>        mappend = mplus        <br>&nbsp;</p><p>This code is already valid.</p><p>But we can't use any written instance at all, the ambiguity problem.</p><p><br></p><div id="editor_compose_signature"><p>Wvv</p></div><blockquote style='border-left:2px solid #CCCCCC;padding:0 1em' style="border-left:1px solid #BBBBBB;margin:1ex;padding:1ex;"><p>29 / 06 / 2013 &nbsp;17:39:25 user Ben Franksen [via Haskell] (<a href="/user/SendEmail.jtp?type=node&node=5732455&i=0" target="_top" rel="nofollow" link="external">[hidden email]</a>) wrote:</p>This is a kind error. The m in Monoid has kind *, while the one in Monad has &nbsp;<br>kind * -&gt; *.
<br><br>I suggest you (try to) rewrite your proposal to eliminate these kind errors 
<br>before any further elaboration.
<br><br>Cheers
<br>-- 
<br>Ben Franksen
<br>() &nbsp;ascii ribbon campaign - against html e-mail 
<br>/\ &nbsp;www.asciiribbon.org &nbsp; - against proprietary attachm€nts
<br><br><br>_______________________________________________
<br>Haskell-prime mailing list
<br><a target="_blank"  href="" rel="nofollow" link="external">[hidden email]</a>
<br><a target="_blank"  href="http://www.haskell.org/mailman/listinfo/haskell-prime" rel="nofollow" link="external">http://www.haskell.org/mailman/listinfo/haskell-prime</a><br>

        
        
        
        <br>
        <br>
        <hr noshade="noshade" size="1" color="#cccccc">
        <div style="color:#444; font: 12px tahoma,geneva,helvetica,arial,sans-serif;">
                <div style="font-weight:bold">If you reply to this email, your message will be added to the discussion below:</div>
                <a target="_blank"  href="http://haskell.1045720.n5.nabble.com/Interfaces-the-Golden-Path-of-Haskell-tp5732208p5732210.html" rel="nofollow" link="external">http://haskell.1045720.n5.nabble.com/Interfaces-the-Golden-Path-of-Haskell-tp5732208p5732210.html</a>
        </div>
        <div style="color:#666; font: 11px tahoma,geneva,helvetica,arial,sans-serif;margin-top:.4em;line-height:1.5em">
                
                To unsubscribe from Interfaces - the Golden Path of Haskell?, <a target="_blank"  href="" rel="nofollow" link="external">click here</a>.<br>
                <a target="_blank"  href="http://haskell.1045720.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml" rel="nofollow" style="font:9px serif" link="external">NAML</a>
        </div></blockquote>

        
        
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://haskell.1045720.n5.nabble.com/Interfaces-the-Golden-Path-of-Haskell-tp5732208p5732455.html">RE: Re: Interfaces - the Golden Path of Haskell?</a><br/>
Sent from the <a href="http://haskell.1045720.n5.nabble.com/Haskell-Haskell-prime-f3195138.html">Haskell - Haskell-prime mailing list archive</a> at Nabble.com.<br/>