<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Sep 12, 2017 at 2:30 PM, Gwendal Roué <span dir="ltr"><<a href="mailto:gwendal.roue@gmail.com" target="_blank">gwendal.roue@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">>> In none of those cases, the compiler emits any warning. It's thus easy to forget or miss the problem, and uneasy to fix it (you'll need a runtime failure to spot it, or a thorough code review).<br>
>><br>
>> I hope you agree with this last sentence. This unbalance between the easiness of the mistake and the easiness of the fix should ring a bell to language designers.<br>
><br>
> Suppose instead this were about a protocol named Fooable and a requirement called foo() that has a default implementation. Everything you just talked about would apply equally. Am I to understand that you are opposed to default implementations in general? If so, then that’s got nothing to do with synthesized Equatable conformance. If not, then you’ll have to justify why.<br>
<br>
</span>Sounds like a good argument, until one realises that if a protocol does not provide a default implementations for a method, it may be because a default implementations is impossible to provide (the most usual case), or because it would be unwise to do so.<br>
<br>
And indeed, the topic currently discussed is not if we should remove or not default implementations. Instead, the question is: is it wise or not to provide an *implicit* default Equatable/Hashable/XXX implementation?<br></blockquote><div><br></div><div>Right, _that_ is the question. It was asked during review for the proposal, and the agreed upon answer is _yes_.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The tenant of explicit synthesis attempt to say that it would be unwise to do so. Please don't have us repeat again, that would be disrespectful.<br>
<br>
BTW, Happy Keynote to everybody!<br>
<span class="HOEnZb"><font color="#888888">Gwendal<br>
<br>
</font></span></blockquote></div><br></div></div>