[swift-evolution] [Review] SE-0065 A New Model for Collections and Indices

Dave Abrahams dabrahams at apple.com
Mon Apr 25 18:15:47 CDT 2016


on Mon Apr 25 2016, Xiaodi Wu <xiaodi.wu-AT-gmail.com> wrote:

> Quick thought:
>
> Why are you reaching for the "form..." rule for the mutating methods when there
> are clear verb counterparts?
> location: locate
> successor: succeed

We're not using successor(i) anymore, as noted below, and furthermore
c.succeed(&i) strongly implies the wrong meaning.  I didn't consider
using

  c. locate(...:&i ... )

primarily because I never thought of it and nobody suggested it IIRC,
but I also don't see how it would work in a family with
c.location(after: i) et al.  Suggestions?

> On Mon, Apr 25, 2016 at 1:24 PM, Dave Abrahams via swift-evolution
> <swift-evolution at swift.org> wrote:
>
>     on Wed Apr 20 2016, Chris Lattner <swift-evolution at swift.org> wrote:
>
>     > On Apr 10, 2016, at 2:41 PM, Chris Lattner
>     > <clattner at apple.com> wrote:
>     >
>     > Hello Swift community,
>     >
>     > The review of "A New Model for Collections and Indices" begins now and
>     runs
>     > through April 18th. The proposal is available here:
>     >
>     >
>     https://github.com/apple/swift-evolution/blob/master/proposals/0065-collections-move-indices.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.
>     >
>     > A quick update: the core team met to discuss this. They agreed to accept
>     it with
>     > some naming-related revisions to the proposal (in response to community
>     > feedback). Dave is organizing this feedback, and I’ll send out the formal
>     > announcement when that is ready.
>
>     The final revisions are reflected in the latest version of the
>     proposal:
>
>     https://github.com/apple/swift-evolution/blob/master/proposals/0065-collections-move-indices.md
>
>     Summary:
>
>     * We decided to take Shawn Erickson's excellent suggestion
>     <http://article.gmane.org/gmane.comp.lang.swift.evolution/14450> to
>     use “location” uniformly for index movement, so instead of
>     successor(i) and predecessor(i) we have location(after: i) and
>     location(before: i).
>
>     * Since Brent Royal-Gordon pointed out
>     <http://news.gmane.org/find-root.php?message_id=156D8FB1%2d1FD3%2d448E%2d8C70%2d6E7400629BC0%40architechies.com
>    >
>     that two of the three proposed Range protocols would likely disappear
>     in future updates, we took another look at all of them. Finding
>     `RangeProtocol` itself to be a very weak abstraction, we removed all
>     three from the proposal.
>
>     For those interested in details, implementation work proceeds apace on
>     the swift-3-indexing-model branch at
>     <https://github.com/apple/swift/tree/swift-3-indexing-model/stdlib/public/core
>    >.
>
>     P.S. If anyone is interested in contributing, there are still plenty of
>     FIXMEs left for us to handle ;-)
>
>     --
>     Dave
>
>     _______________________________________________
>     swift-evolution mailing list
>     swift-evolution at swift.org
>     https://lists.swift.org/mailman/listinfo/swift-evolution
>

-- 
Dave


More information about the swift-evolution mailing list