<div>Well, AnyObject exists on Linux with no bridging. Still it&#39;s IMPLICITELY conformed by all classes.</div><div><br></div><div>What you say is just another approach to the same issue and we can argue for eternity. However, I am very positive with syntactic sugar and this one falls exactly to sugar category. Make people lifes easier ;)</div><div><br></div><div>Moreover it will never ever do any harm.</div><div><br></div><div>Adding an easy way to get another set of frameworks/approaches/etc (proven by time, btw) on board sounds very appealing to me. I wish to see Swift a very diverse ecosystem and this Pitch serves exactly this goal.</div><div><br></div><div>Let&#39;s just see if it gets any more positive votes.</div><div><br><div class="gmail_quote"><div>On Mon, 26 Dec 2016 at 12:10 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com">xiaodi.wu@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_msg">On Mon, Dec 26, 2016 at 1:21 AM, Daniel Leping <span class="gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="gmail_msg"></div><div class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_msg">I believe you&#39;re confusing in-class factory methods with factory pattern. </div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Factories can be separate objects and it&#39;s a very different situation.</div></blockquote><div class="gmail_msg"><br class="gmail_msg"></div></div></div></div><div class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><div class="gmail_msg">Fair, but I understand both to fall under the umbrella of &quot;any factory pattern&quot; and just wanted to point out that at least some of those patterns seem to be discouraged :)</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">In any case, I think it&#39;s fair to say that the question &quot;does this type implement `init()`?&quot; 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 class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">You&#39;re certainly right that `AnyObject` has magic. It&#39;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&#39;m going to take a wild guess that no other use case would pass that high bar for magic.</div></div></div></div><div class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_msg"><div class="gmail_quote gmail_msg"><div class="gmail_msg">On Mon, 26 Dec 2016 at 11:46 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, Dec 26, 2016 at 1:10 AM, Daniel Leping <span class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">I&#39;m giving a wider range, which is about ANY factory pattern related stuff. Doesn&#39;t look to be narrow to me.</div></blockquote><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div></div></div></div><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">I thought factory methods were regarded as undesirable in Swift? One of the stated reasons for failable initializers was: &quot;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.&quot; &lt;<a href="https://developer.apple.com/swift/blog/?id=17" class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">https://developer.apple.com/swift/blog/?id=17</a>&gt;</div></div></div></div><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 11:38 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, Dec 26, 2016 at 12:58 AM, Daniel Leping <span class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">Well, reflection is a huge performance drop. Protocol conformance is way better.</div></blockquote><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div></div></div></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">I&#39;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&#39;t see how this is a &quot;very common use case&quot; (as you write) that would justify magic equivalent to that for Objective-C bridging, which is what you&#39;re saying it should be. If `DefaultConstructible` is useful only when it&#39;s magic and the specific use case is dependency injection/inversion of control, then we&#39;re getting very specialized here.</div></div></div></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 11:26 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, Dec 26, 2016 at 12:50 AM, Daniel Leping <span class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">I&#39;m not arguing for implicit conformance in general, but I&#39;m telling that DefaultConstructable is the same basic level as AnyObject, which is conformed implicitly.</div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">Shortly, I&#39;m against implicit conformance in general. I&#39;m positive with &quot;automatic compiler magic&quot; 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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div></div></div></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">Well, this sounds very different from Adam&#39;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&#39;m confused which way that is.</div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589HOEnZb m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589h5 m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 11:14 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, Dec 26, 2016 at 12:43 AM, Daniel Leping via swift-evolution <span class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&lt;<a href="mailto:swift-evolution@swift.org" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt;</span> wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">Thank you, Adam!</div></blockquote><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">Wait, are you arguing for implicit conformance or not?</div></div></div></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005HOEnZb m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005h5 m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 11:12 Adam Nemecek via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; <span style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">Swift doesn&#39;t do implicit conformance.  It always has to be declared</span><br style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">explicitly.  I&#39;m pretty sure Doug Gregor can explain why better than I</span><br style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">could.</span><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></span></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></span></div></div><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">I don&#39;t think Daniel was arguing for implicit conformance, he&#39;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><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_extra m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">On Sun, Dec 25, 2016 at 9:17 PM, Dave Abrahams via swift-evolution <span class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&lt;<a href="mailto:swift-evolution@swift.org" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt;</span> wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><blockquote class="gmail_quote m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_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"><span class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">on Sun Dec 25 2016, Daniel Leping &lt;<a href="mailto:swift-evolution@swift.org" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; You are right, usually it&#39;s required to implement a protocol which is not a<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; good approach. The best is plain objects which can be used independently of<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; ORM if needed (as DTOs, i.e.).<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; I was thinking of DefaultConstructable as a protocol automatically applied<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; to any class/struct having a default init, which is really logical for<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; me.<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></span>Swift doesn&#39;t do implicit conformance.  It always has to be declared<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">explicitly.  I&#39;m pretty sure Doug Gregor can explain why better than I<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">could.<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><div class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374m_2766821119499066179m_-4530764108705073068h5 m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt; On Mon, 26 Dec 2016 at 9:41 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; On Sun, Dec 25, 2016 at 10:50 PM, Daniel Leping<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; &lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; wrote:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; Ok, an example from ORM. You have an entity factory with a virtual (read,<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; overloadable in the subclasses) method populating the properties.<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; DefaultConstructable is a great choice here. Otherwise you will have to<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; force the users of your ORM to implement a certain protocol, which you most<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; probably would like to avoid.<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; Sorry--I&#39;m not very familiar with using Swift for ORM purposes. Why do you<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; want to avoid having your users conform to a certain protocol? Wouldn&#39;t the<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; users of your ORM have to conform to `DefaultConstructible` then? I&#39;m<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; looking at Swift ORMs, and all require users to conform to a protocol or<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; inherit from a base class, typically named `Model` or similar. >From a quick<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt; Google search:<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"><br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg">&gt;&gt;<br class="m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435m_-6624483711025557005m_2849072433074184374gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676m_939594836185937589m_-7316109184252281435gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158m_3261830299967683124m_8724896498715535676gmail_msg m_-612953778398874551m_5702467684916452786m_-5952565727754946483gmail-m_-86933029731195158gmail_msg m_-612953778398874551m_5702467684916452786gmail_msg gmail_msg"></div></div></blockquote></div></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></div></div></blockquote></div></div>