On 23 June 2017 at 01:20, Xiaodi Wu <xiaodi.wu at gmail.com <xiaodi...@gmail.com>> wrote:
> 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. > > 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. > > The summary of the core team's decision is unusually long and > extraordinarily enlightening. The issues about this feature being out of > scope are discussed as "meta-points," 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. > thanks. interesting reading indeed: https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160111/006469.html "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. " that was written in Jan 2016, a year and a half ago. time to resurrect? personally i am not too mad about the "path forward" outcome at the bottom. looks a bit too verbose, a bit too complicated and a bit too "over engineered", but that's in my humble imho. personally i'd tend to more simple measures, e.g. if there is "let x = 0" and it looks a problem if we override it (as it does indeed) - just don't have those "let's" it in the default memberwise initializer parameter list - done. btw. don't blame syntax sugar, it's not without value.... when it helps eliminating 200 or even 2 lines. speaking of "kicking the can down the road" - 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's right or 3, or what particular swift version it is in - not that important. Mike
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution