HI all,

After having discussed this proposal with the members of the standard library 
team, we would like to propose the following updates:

- Since both the language and the standard library have evolved since it was 
written, the proposal should reflect these changes (things like renaming 
`Generator` to `Iterator`, adjusting for first argument label rules etc.)
(Actually, while writing this, I discovered 
https://github.com/apple/swift-evolution/pull/276)
- We believe that renaming `find(_:)` to `first(where:)` would make call sites 
more clear

// original proposal
numbers.find { isPrime($0) }
numbers.find(isPrime)

// suggested update
numbers.first { isPrime($0) }
numbers.first(where: isPrime)

In the examples above, when the predicate is passed as a trailing closure, 
there is no big difference in the invocation, but it changes when we have a 
named function that we would like to use as a predicate.
The Collection protocol already has a property called `first`, that returns an 
optional element, it also has a method `index(where:)`. In this sense 
`first(where:)` does not introduce new words to the library vocabulary.

max

> On Apr 28, 2016, at 11:11 AM, Chris Lattner via swift-evolution 
> <[email protected]> wrote:
> 
> Hello Swift community,
> 
> The review of "SE-0032: Add find method to SequenceType" begins now and runs 
> through May 3. The proposal is available here:
> 
>       
> https://github.com/apple/swift-evolution/blob/master/proposals/0032-sequencetype-find.md
> 
> Reviews are an important part of the Swift evolution process. All reviews 
> should be sent to the swift-evolution mailing list at
> 
>       https://lists.swift.org/mailman/listinfo/swift-evolution
> 
> or, if you would like to keep your feedback private, directly to the review 
> manager.
> 
> What goes into a review?
> 
> The goal of the review process is to improve the proposal under review 
> through constructive criticism and, eventually, determine the direction of 
> Swift. When writing your review, here are some questions you might want to 
> answer in your review:
> 
>       * What is your evaluation of the proposal?
>       * Is the problem being addressed significant enough to warrant a change 
> to Swift?
>       * Does this proposal fit well with the feel and direction of Swift?
>       * If you have you used other languages or libraries with a similar 
> feature, how do you feel that this proposal compares to those?
>       * How much effort did you put into your review? A glance, a quick 
> reading, or an in-depth study?
> 
> More information about the Swift evolution process is available at
> 
>       https://github.com/apple/swift-evolution/blob/master/process.md
> 
> Thank you,
> 
> -Chris Lattner
> Review Manager
> 
> 
> _______________________________________________
> swift-evolution mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-evolution

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to