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

Dave Abrahams dabrahams at apple.com
Mon Apr 25 13:24:28 CDT 2016


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



More information about the swift-evolution mailing list