<div dir="ltr">On Tue, May 10, 2016 at 9:33 PM, Erica Sadun via swift-evolution <span dir="ltr">&lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt;</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"><span class=""><br>
&gt; On May 10, 2016, at 6:51 PM, Chris Lattner via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt;&gt; On May 10, 2016, at 11:48 AM, Chris Lattner &lt;<a href="mailto:clattner@apple.com">clattner@apple.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hello Swift community,<br>
&gt;&gt;<br>
&gt;&gt; The review of &quot;SE-0041: Updating Protocol Naming Conventions for Conversions&quot; begins now and runs through May 16. The proposal is available here:<br>
&gt;&gt;<br>
&gt;&gt;      <a href="https://github.com/apple/swift-evolution/blob/master/proposals/0041-conversion-protocol-conventions.md" rel="noreferrer" target="_blank">https://github.com/apple/swift-evolution/blob/master/proposals/0041-conversion-protocol-conventions.md</a><br>
&gt;<br>
&gt; Here are comments from someone who preferred to stay anonymous.  These are not my own:<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; * What is your evaluation of the proposal?<br>
&gt;<br>
&gt; I rather agree with the comments mentioned in the proposal from the Standard Library design team, in that I agree with the basic intention of the proposal, but I’m not convinced about the proposed answer. Specifically:<br>
<br>
<br>
</span>We&#39;d be happy to bikeshed again.<br>
<br>
I think fundamentally our take on this is:<br>
<br>
* We want there to be a standard that expresses the three conversion/initialization styles.<br>
* We feel the system is currently broken. And we want to have a coherent and settled vision in place for 3, even imperfect.<br>
* We&#39;re flexible about the naming but it should be (1) Swifty and (2) well grounded in meaning.<br>
<br>
Let me turn the floor over to Matthew here.<br></blockquote><div><br></div><div>Like David Hart and the anonymous reviewer, I agree that the problem is worth solving but the proposed names leave something to be desired. I&#39;d like to offer a minimalist suggestion:</div><div><br></div><div>Initializable -- for what&#39;s currently &quot;LiteralConvertible&quot; (and also StringInterpolationConvertible)</div><div>Convertible -- for &quot;StringConvertible&quot; protocols</div><div>Representable -- keep as it is currently</div><div><br></div><div>I agree with others that &quot;Creatable&quot; is a strange term because it&#39;s not used anywhere else. Looking at the auto-generated docs for the &quot;LiteralConvertible&quot; protocols, it says that conforming types &quot;can be initialized with&quot; whatever thing is said to be convertible. I think that offers a pretty clear alternative word--namely, &quot;initializable.&quot;<br></div><div><br></div><div>I can live with &quot;convertible&quot; being one-way. Not all &quot;convertible&quot; things are like convertible cars. When you convert from one faith to another, for example, some level of finality is intended.</div><div><br></div><div>I can also live with the current usage of the term &quot;representable.&quot; In the context of things like &quot;representable values&quot; in floating point types, representability suggests exactness and thus round-trippability.</div><div><br></div><div>(And to use the example in the proposal, a lawyer who represents you well [*] is one that communicates your position to the court. You &quot;input&quot; your position, your lawyer goes to court, and then they &quot;output&quot; your position in legalese to the court. If there&#39;s degradation in the quality of the &quot;output,&quot; then you&#39;ve been inadequately represented.)</div><div><br></div><div>[*And, it bears clarifying that your lawyer is considered to represent *you* and not merely *your interests*. If you&#39;re the plaintiff in a case and your lawyers says, &quot;My client&#39;s entitled to a million dollars!&quot;, the court can restate that as &quot;Plaintiff argues that she&#39;s entitled to a million dollars.&quot;]</div><div><br></div><div><br></div></div></div></div>