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
>  
> <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 <mailto: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
>  
> <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 <mailto:swift-evolution@swift.org>
> https://lists.swift.org/mailman/listinfo/swift-evolution 
> <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

Reply via email to