<div dir="ltr">On 23 June 2017 at 01:20, Xiaodi Wu <span dir="ltr">&lt;<a href="mailto:xiaodi.wu@gmail.com" target="_blank">xiaodi.wu at gmail.com</a>&gt;</span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">These issues which you have raised have been discussed thoroughly on this list some time ago. It was distilled into a very well written proposal, SE-0018, that was evaluated and deferred. I would recommend that you and all people who are interested in this topic review the initial pitch and the subsequent discussions that took place.<br><br>At the conclusion of that process, any improvements for memberwise initialization were deemed out of scope for Swift 3. Subsequently, all sugar was out of scope for Swift 4 phase 1 and deemed to be extremely low priority for Swift 4 phase 2. Whether the topic will be in scope again is an open question.<br><br>The summary of the core team&#39;s decision is unusually long and extraordinarily enlightening. The issues about this feature being out of scope are discussed as &quot;meta-points,&quot; and an extensive amount of text explains the thought process behind that conclusion. Beyond that, however, the decision also explores a truly remarkable set of possible solutions to the underlying issue, and it raises very interesting (non-meta) points that would have to be carefully considered before any revised proposal.<br></blockquote><div><br></div><div>thanks. interesting reading indeed:</div><div><br></div><div><a href="https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160111/006469.html">https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160111/006469.html</a></div><div><br></div><div>&quot;We can tackle this sort of sugar feature at any time, including in Swift 4.  The core team would like to defer talking about this for a couple of months until the other things (property behaviors, resilience, and other big changes) are behind us. &quot;</div><div><br></div><div>that was written in Jan 2016, a year and a half ago. time to resurrect?</div><div><br></div><div>personally i am not too mad about the &quot;path forward&quot; outcome at the bottom. looks a bit too verbose, a bit too complicated and a bit too &quot;over engineered&quot;, but that&#39;s in my humble imho. personally i&#39;d tend to more simple measures, e.g. if there is &quot;let x = 0&quot; and it looks a problem if we override it (as it does indeed) - just don&#39;t have those &quot;let&#39;s&quot; it in the default memberwise initializer parameter list - done.</div><div><br></div><div>btw. don&#39;t blame syntax sugar, it&#39;s not without value.... when it helps eliminating 200 or even 2 lines.<br></div><div><br></div><div><div>speaking of &quot;kicking the can down the road&quot; - i trust this is a valuable approach still... it is very hard (and almost impossible) to do it right straight away... whether there will be needed 10 iterations until it&#39;s right or 3, or what particular swift version it is in - not that important.</div></div><div><br></div><div>Mike</div><div><br></div></div></div></div>