<div dir="auto">I tend to agree with you, although I don't think () is a compelling argument. Rather,  it reuses the name == that Haskellers are accustomed to defining flexibly. But for that same reason, as well as the convenience, I do think we should consider using a kind class. That way things at the type level look pretty much like they do at the term level.</div><div class="gmail_extra"><br><div class="gmail_quote">On Aug 10, 2017 10:59 AM, "Ryan Scott" <<a href="mailto:ryan.gl.scott@gmail.com" target="_blank">ryan.gl.scott@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Personally, I'd be more inclined towards latter approach (in<br>
<a href="https://phabricator.haskell.org/D3837" rel="noreferrer" target="_blank">https://phabricator.haskell.<wbr>org/D3837</a>). After all, one of the key<br>
properties of (==) (for which the Haddocks even make a special note)<br>
is that it does not attempt to provide an instance that works for<br>
every possible kind. Indeed, as you've discovered, there are cases<br>
when it doesn't make sense to use DefaultEq, such as for ().<br>
<br>
I'll tentatively give my support for D3837, although I'd be curious to<br>
hear what Richard has to say about this (since I'm reasonably<br>
confident he gave (==) its current implementation).<br>
<br>
Ryan S.<br>
______________________________<wbr>_________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-<wbr>bin/mailman/listinfo/libraries</a><br>
</blockquote></div></div>