Honestly, given that the detailed implementation is core team-approved, I wonder if it ought to be just one of those rare pre-accepted proposals instead. It may not be ABI impacting, but as a bugfix for a Swift 3 proposal there's a good argument it should go out in 3.x. My two cents anyway.
On Mon, Oct 17, 2016 at 07:16 Austin Zheng <austinzh...@gmail.com> wrote: > It seems like that link should be added to the 'frequently proposed > changes' page on the repo. I'll prepare a PR. > > Austin > > > On Oct 16, 2016, at 4:09 PM, Xiaodi Wu via swift-evolution < > swift-evolution@swift.org> wrote: > > Welcome to the list! It seems the community and core team are in agreement > about your point. As mentioned previously, the core team has laid out a > two-step roadmap to restoring argument labels: > > > https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160711/024331.html > > Hope that helps! > On Mon, Oct 17, 2016 at 06:35 Grant Kemp via swift-evolution < > swift-evolution@swift.org> wrote: > > Hi all > A South African in London here and I have decided to make the jump to > trying to help Swift develop. > > I was an android and web developer and swift converted me to iOS > programming which has become something that I love. I have built several > apps on iOS and on macOS using it and thoroughly enjoyed it. > > One think has made me fall a little out of love with swift 3 was > the removal of completion handler argument labels which has created: > 1. Less maintainable code for teams > 2. Less readable and thus more error prone code > 3. Slower code to write as now I have to regularly scroll to the top of > the method to find out what the parameters should be . > 4. Seems to be at odds with other parts of the api which favours labels. > > I have found quite a lot of support from others via my stack overflow > question here: > > http://stackoverflow.com/questions/39613272/xcode-8-function-types-cannot-have-argument-label-breaking-my-build > > Here is my suggestion: > Currently the Swift 3 version does not allow arguments in the > completionhandler method, which is confusing and not very readable. > > func myMethod(_ completionhandler:(_ downloadedValue:String,_ > isActive:Bool, _ error:NSError)-> Void) { > //<<After doing some async method such as downloading from an API > >> > > completionhandler(myString, true, myError) > > } > // INSTEAD: ideally the argument labels should be added optionally to > be called in the completion method such as below and using a Tuple-like > syntax to indicate that the method should have the labels > > func myMethod(_ completionhandler:( downloadedValue:String, isActive: > Bool, error:NSError)-> Void) { > > //<<After doing some async method such as downloading from an API > >> > > completionhandler(dowloadedValue:myString, isActive:true, > error:myError) > > } > > > Thanks for the help ( and any feedback on my idea above ) > > Thanks for the epic work you are doing ! > -- > Sent from my mobile > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution > > >
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution