<p> We already could write and compile next code:</p><p>{-# LANGUAGE PolyKinds, FlexibleContexts, TypeFamilies #-}</p><p>
{-# LANGUAGE
FlexibleInstances, UndecidableInstances #-}</p><p>class Monoid (a :: k) where<br> type Pr a :: *<br> mempty :: PA a<br> mappend :: Pr a -> Pr a -> Pr a<br><br>        <br>instance Monoid [b] where <br> type Pr [b] = [b]<br>        mempty = [] <br>        mappend = (++)<br> <br>instance (Monad m, MonadPlus m) => Monoid ( m :: * -> * ) where <br>type Pr m = m Int -- Unfortunally, we can't write now
type Pr m =
forall b. m b
</p><p> --Illegal polymorphic or qualified type: forall b. m b<br>        mempty = mzero<br>        mappend = mplus        <br> </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 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 <br>kind * -> *.
<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>() ascii ribbon campaign - against html e-mail
<br>/\ www.asciiribbon.org - 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/>