<div dir="ltr"><div><div style="font-size:12.800000190734863px"><span style="font-size:small">On Mon, Dec 26, 2016 at 1:21 AM, Daniel Leping </span><span dir="ltr"><<a href="mailto:daniel@crossroadlabs.xyz" target="_blank">daniel@crossroadlabs.xyz</a>></span><span style="font-size:small"> wrote:</span><br></div></div><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-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div>I believe you're confusing in-class factory methods with factory pattern. </div><div><br></div><div>Factories can be separate objects and it's a very different situation.</div></blockquote><div><br></div><div><div style="font-size:12.800000190734863px">Fair, but I understand both to fall under the umbrella of "any factory pattern" and just wanted to point out that at least some of those patterns seem to be discouraged :)</div><div style="font-size:12.800000190734863px"><br></div><div style="font-size:12.800000190734863px">In any case, I think it's fair to say that the question "does this type implement `init()`?" is properly a reflection question and not a protocol conformance question: the answer provides no semantic guarantees whatsoever about the value that you get from `init()`, and in your use case you do not care and simply want to invoke the initializer and return what you get from it. Now, in a perfect world where the reflection facilities that Swift provided were essentially free of performance cost, would you object to that characterization?</div><div style="font-size:12.800000190734863px"><br></div><div style="font-size:12.800000190734863px">You're certainly right that `AnyObject` has magic. It's rather obvious that Obj-C bridging is non-negotiable for Swift, and of course a bridged type is all sorts of different under the hood from a native type. I'm going to take a wild guess that no other use case would pass that high bar for magic.</div></div><div style="font-size:12.800000190734863px"><br></div><div style="font-size:12.800000190734863px">[Resent after truncating replies.]</div><div style="font-size:12.800000190734863px"><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_quote"><div>On Mon, 26 Dec 2016 at 11:46 Xiaodi Wu <<a href="mailto:xiaodi.wu@gmail.com" target="_blank">xiaodi.wu@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911gmail_msg">On Mon, Dec 26, 2016 at 1:10 AM, Daniel Leping <span class="gmail-m_-556046187951679911gmail_msg"><<a href="mailto:daniel@crossroadlabs.xyz" class="gmail-m_-556046187951679911gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>></span> wrote:<br class="gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911gmail_msg"><blockquote class="gmail_quote gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911gmail_msg">I'm giving a wider range, which is about ANY factory pattern related stuff. Doesn't look to be narrow to me.</div></blockquote><div class="gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911gmail_msg"></div></div></div></div><div class="gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911gmail_msg">I thought factory methods were regarded as undesirable in Swift? One of the stated reasons for failable initializers was: "Failable initializers eliminate the most common reason for factory methods in Swift... Using the failable initializer allows greater use of Swift’s uniform construction syntax, which simplifies the language by eliminating the confusion and duplication between initializers and factory methods." <<a href="https://developer.apple.com/swift/blog/?id=17" class="gmail-m_-556046187951679911gmail_msg" target="_blank">https://developer.apple.com/<wbr>swift/blog/?id=17</a>></div></div></div></div><div class="gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911gmail_msg">On Mon, 26 Dec 2016 at 11:38 Xiaodi Wu <<a href="mailto:xiaodi.wu@gmail.com" class="gmail-m_-556046187951679911gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>> wrote:<br class="gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">On Mon, Dec 26, 2016 at 12:58 AM, Daniel Leping <span class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><<a href="mailto:daniel@crossroadlabs.xyz" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>></span> wrote:<br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">Well, reflection is a huge performance drop. Protocol conformance is way better.</div></blockquote><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div></div></div></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">I'm not sure how huge it would be in the grand scheme of things; in your example, you are still evaluating a train of protocol conformances and casting at runtime. Of course, compiler magic can be fast, but I still don't see how this is a "very common use case" (as you write) that would justify magic equivalent to that for Objective-C bridging, which is what you're saying it should be. If `DefaultConstructible` is useful only when it's magic and the specific use case is dependency injection/inversion of control, then we're getting very specialized here.</div></div></div></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">On Mon, 26 Dec 2016 at 11:26 Xiaodi Wu <<a href="mailto:xiaodi.wu@gmail.com" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>> wrote:<br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">On Mon, Dec 26, 2016 at 12:50 AM, Daniel Leping <span class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><<a href="mailto:daniel@crossroadlabs.xyz" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>></span> wrote:<br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">I'm not arguing for implicit conformance in general, but I'm telling that DefaultConstructable is the same basic level as AnyObject, which is conformed implicitly.</div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">Shortly, I'm against implicit conformance in general. I'm positive with "automatic compiler magic" conformance to DefaultConstructable for any object having a default constructor as it really is a very basic stuff. Otherwise you will have to add explicit conformance to it in almost every class of yours (annoying).</div></blockquote><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div></div></div></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">Well, this sounds very different from Adam's proposal, where he proposes semantic meaning for `init()` that, as he described, means that it cannot apply to every type that implements `init()`. However, he also just said that he thinks that all types with `init()` should conform, so I guess I'm confused which way that is.</div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">At base, you want a way of knowing if a type has `init()`. That sounds like reflection to me, not protocol conformance. For the record, I look forward to the day when AnyObject magic is removed; I assume it is coming eventually.</div></div></div></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589HOEnZb gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589h5 gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">On Mon, 26 Dec 2016 at 11:14 Xiaodi Wu <<a href="mailto:xiaodi.wu@gmail.com" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>> wrote:<br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">On Mon, Dec 26, 2016 at 12:43 AM, Daniel Leping via swift-evolution <span class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><<a href="mailto:swift-evolution@swift.org" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" target="_blank">swift-evolution@swift.org</a>></span> wrote:<br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">Thank you, Adam!</div></blockquote><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">Wait, are you arguing for implicit conformance or not?</div></div></div></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_extra gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005HOEnZb gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005h5 gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">On Mon, 26 Dec 2016 at 11:12 Adam Nemecek via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" target="_blank">swift-evolution@swift.org</a>> wrote:<br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></div><blockquote class="gmail_quote gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">> <span style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">Swift doesn't do implicit conformance. It always has to be declared</span><br style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><span style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">explicitly. I'm pretty sure Doug Gregor can explain why better than I</span><br style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><span style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">could.</span><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><span style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></span></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><span style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><br class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"></span></div></div><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><div class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg"><span style="font-size:12.8px" class="gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg gmail-m_-556046187951679911m_-5952565727754946483gmail-m_-86933029731195158gmail_msg gmail-m_-556046187951679911gmail_msg">I don't think Daniel was arguing for implicit conformance, he's saying that if it makes sense for an object to have a default constructor, it makes sense for it to conform to the protocol which I agree with 100%.</span></div></div></blockquote></div></div></div></div></blockquote></div></div></div></blockquote></div></div></div></div></blockquote></div></div></div></blockquote></div></div></blockquote></div></div></div></blockquote></div></div></blockquote></div></div></div></blockquote></div></div>
</blockquote></div><br></div></div>