<div>Ok, which approach is easier? Plain struct working out of the box or adding an additional conformance? I like the usage be as easy as possible and as less effort as possible.</div><div><br><div class="gmail_quote"><div>On Mon, 26 Dec 2016 at 10:20 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 Sun, Dec 25, 2016 at 11:46 PM, 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">You are right, usually it&#39;s required to implement a protocol which is not a good approach.</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">Why is it not?</div></div></div></div><div class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><div 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">The best is plain objects which can be used independently of ORM if needed (as DTOs, i.e.).</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">An object that conforms to some protocol can still be used independently of the ORM solution!</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><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 was thinking of DefaultConstructable as a protocol automatically applied to any class/struct having a default init, which is really logical for me.</div></blockquote><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 9:41 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_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Sun, Dec 25, 2016 at 10:50 PM, Daniel Leping <span class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Ok, an example from ORM. You have an entity factory with a virtual (read, overloadable in the subclasses) method populating the properties. DefaultConstructable is a great choice here. Otherwise you will have to force the users of your ORM to implement a certain protocol, which you most probably would like to avoid.</div></blockquote><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></div></div></div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Sorry--I&#39;m not very familiar with using Swift for ORM purposes. Why do you want to avoid having your users conform to a certain protocol? Wouldn&#39;t the users of your ORM have to conform to `DefaultConstructible` then? I&#39;m looking at Swift ORMs, and all require users to conform to a protocol or inherit from a base class, typically named `Model` or similar. From a quick Google search:</div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><a href="https://vapor.github.io/documentation/fluent/model.html" class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">https://vapor.github.io/documentation/fluent/model.html</a><br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><a href="https://github.com/blitzagency/amigo-swift" class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">https://github.com/blitzagency/amigo-swift</a></div></div></div></div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"> <br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">In general I think the best showcase is generic factories.</div><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 9:02 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Sun, Dec 25, 2016 at 10:18 PM, Daniel Leping <span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Usually it&#39;s a generic function that needs to return a value from some other function or a default value (zero) in a case of some conditions. Optional value is an arguable solution in quite some scenarios. Afaik, sometimes it can be used for optional resolution.</div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Right, I&#39;d agree that Optional is the idiomatic way to do it. Afaict, there&#39;s not much you can do with a default value that you couldn&#39;t with nil, unless you have some guarantee as to _what_ that default is; however, I&#39;d expect that in every case that you can rely on a guarantee about a default value which would be more useful than nil, it&#39;s going to require more specific knowledge of your type than an all-encompassing `DefaultConstructible` can provide.</div></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Also, generic factories. Widely used in ORM solutions.</div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Can you elaborate on this? Why is Optional not a solution here?</div></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"> </div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">As mentioned above, algorythmical stuff that requires Zero.</div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">I&#39;m still not convinced there exist credible use cases that need to be generic over both collections and floating point, for instance. In fact, in my experience, there are few math-heavy algorithms where one can ignore even the distinction between integers and binary floating point. By the time you get down to matrix math, you start to run into difficulties that require separate implementations for Float and Double.</div></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753HOEnZb m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753h5 m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 8:38 Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt; wrote:<br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Can you give some examples of what you used this approach to do?</div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Sun, Dec 25, 2016 at 9:49 PM, Daniel Leping <span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&lt;<a href="mailto:daniel@crossroadlabs.xyz" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">daniel@crossroadlabs.xyz</a>&gt;</span> wrote:<br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">+1 to this approach. I remember I had to create it on my own for my projects. Would be nice to have it out of the box.</div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348HOEnZb m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348h5 m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Mon, 26 Dec 2016 at 8:11 Adam Nemecek via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; <span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Yes, those particular types have initializers that take no arguments. That does not address my question. You merely restated your initial observation that many types in Swift have implemented `init()`.</span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Right, it&#39;s an empirical argument.</span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div>&gt; <span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">I didn&#39;t think the value returned by `init()` was regarded as any sort of zero--or even any sort of &quot;default.&quot; In fact, some types in Foundation have a static property called `default` distinct from `init()`.</span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Let&#39;s not talk about those then. This would not apply to every single type in existence, as I&#39;ve stated previously.</span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; </span><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">It gives you something different every time. How can this be squared with your stated motivation regarding concepts of zero and concepts of equality?</span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Due to the fact that it&#39;s a resource, not a value. As I&#39;ve stated above, not all of this applies to types that are more resource-like.</span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; <span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Or, it&#39;s what you get because that&#39;s the most trivial possible string. Quite simply, I do not think the designer of most types that implement `init()` have paused to wonder whether the value that you get is the identity element associated with the most useful and prominent operation that can be performed on that type. I certainly never have.</span><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">This is an appeal to tradition. </span></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; </span><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">The statement I wrote was in JavaScript, so I&#39;m not sure what you mean by returning an optional. `[]</span><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">.reduce((a, b) =&gt; a + b)` results in an error in JavaScript. In Swift, such a function may also be implemented with a precondition that the array is not empty and would not return an optional.</span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">I was talking about their </span><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">analogous </span><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">swift implementations.</span></div></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; <span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Can you give an example of an algorithm dealing with tensors where you would use a `DefaultConstructible` generic over all types that have `init()`, as opposed to working with the existing `Integer`, `FloatingPoint`, and other numerical protocols?</span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">If it&#39;s implemented as either nested collections or numbers. </span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></div><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Sun, Dec 25, 2016 at 6:00 PM, Xiaodi Wu <span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&lt;<a href="mailto:xiaodi.wu@gmail.com" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">xiaodi.wu@gmail.com</a>&gt;</span> wrote:<br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">On Sun, Dec 25, 2016 at 7:30 PM, Adam Nemecek <span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&lt;<a href="mailto:adamnemecek@gmail.com" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg" target="_blank">adamnemecek@gmail.com</a>&gt;</span> wrote:<br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span><div class="gmail_extra m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359m_3012462067322088809m_1176161565890972384gmail- m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt;  Is it well settled, either in Swift or in C++/Rust/etc., that the value returned by a default initializer/constructor is regarded as an identity element or zero? </span><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Int() == 0, String() == &quot;&quot; so to some extent by convention, a lot of types have a default value as is.</span></div></div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Yes, those particular types have initializers that take no arguments. That does not address my question. You merely restated your initial observation that many types in Swift have implemented `init()`.</div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">I didn&#39;t think the value returned by `init()` was regarded as any sort of zero--or even any sort of &quot;default.&quot; In fact, some types in Foundation have a static property called `default` distinct from `init()`. In Rust, the Default trait requires a function called `default()`, which is documented as being useful when you want &quot;some kind of default value, and don&#39;t particularly care what it is.&quot;</div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">I was asking whether there&#39;s some understanding, of which I&#39;ve been unaware, that the result of `init()` (or the equivalent in other languages) is expected to be some sort of zero or an identity element. I&#39;m not aware of any evidence to that effect. Are you?</div><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359m_3012462067322088809m_1176161565890972384gmail- m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; Is the thread that I get by writing `let t = Thread()` some kind of zero in any reasonable sense of the word?</span><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></span></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">DefaultConstructibility makes less sense for types that represent some sort of resource but make sense for things that are values. But even in this case, Thread() gives you a default value for example if you are working with a resizable collection of threads.</span></div></div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">It gives you something different every time. How can this be squared with your stated motivation regarding concepts of zero and concepts of equality?</div><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">A better question is why does thread currently implement a default constructor? </span></div></div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">It&#39;s an initializer that takes no arguments, because none are needed for a new thread. How else would you write it?</div><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359m_3012462067322088809m_1176161565890972384gmail- m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">&gt; Do you mean to argue that for an integer the additive identity should be considered &quot;more prominent and useful&quot; than the multiplicative identity? I&#39;m not aware of any mathematical justification for such a conclusion.</div></div><div style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">I do. The justification is that if I call the default constructor of Int currently, I get the value of 0.</div></div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">This is backwards. Why do you believe that the value you obtain from `init()` is intended to be an identity element at all, let alone the most important one? (It&#39;s also circular reasoning. Since `init()` only ever gives you one value at a time, by your reasoning it demonstrates that every type must have one &quot;more prominent and useful&quot; identity, which is begging the question.)</div><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Which means that the binary operation must be addition.</div></div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Based on the value of `Int.init()`, you conclude that addition of integers is a &quot;more prominent and useful&quot; operation than multiplication? Again, this is backwards. Rather, we know that each numerical type belongs to multiple ring algebras; there is no basis for reckoning any as &quot;more useful.&quot; Since `init()` can only ever give us one value at a time, we know that `init()` cannot give a value that is a meaningful default with respect to any particular operation.</div><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_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_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div style="font-size:12.8px" class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">If I call String() I get &quot;&quot; which is the identity of the + String operation.</div></div></blockquote><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg">Or, it&#39;s what you get because that&#39;s the most trivial possible string. Quite simply, I do not think the designer of most types that implement `init()` have paused to wonder whether the value that you get is the identity element associated with the most useful and prominent operation that can be performed on that type. I certainly never have.</div><span class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><div class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"><br class="m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688m_-767592733113527348m_4453439987323397359gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493m_4646774645923960753m_-687985868842093688gmail_msg m_5363071995241148880m_9097125941423890285m_8633664683801331965gmail-m_-5467957317484069493gmail_msg m_5363071995241148880m_9097125941423890285gmail_msg gmail_msg"></div></span></div></div></div></blockquote></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>