[swift-evolution] SE-165: Dictionary & Set Enhancements

Jarod Long swift at lng.la
Wed Apr 5 21:01:54 CDT 2017


> • What is your evaluation of the proposal?

I think it's great! Enthusiastic +1 from me.

Just an idea -- in addition to `mapValues`, it seems like it would be useful to have both a `mapKeys` and plain `map` for key-value pairs. The proposal mentions that `map` was omitted because unique keys aren't guaranteed, but it seems reasonable to me to trap if duplicate keys are generated during a map, similar to how the proposed sequence-based initializer traps on duplicate keys.

I don't think those additions are critical, but they seem nice to me.

> • Is the problem being addressed significant enough to warrant a change to Swift?

Yes -- I've struggled with several of the issues that the proposal addresses. The specialized map / filter, default subscript values, and merging are particularly appealing to me.

> • Does this proposal fit well with the feel and direction of Swift?

I think so, since Swift already goes to great lengths to provide a robust collection system. This is a logical iteration of that idea.

> • If you have used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?

I don't recall any features I've used elsewhere that would be helpful to compare to.

> • How much effort did you put into your review? A glance, a quick reading, or an in-depth study?

I didn't follow any discussion that led to the proposal, but I read the whole thing.

Jarod

On Apr 5, 2017, 17:45 -0700, Ben Cohen via swift-evolution <swift-evolution at swift.org>, wrote:
> Hello, Swift community!
>
> The review of "SE-165: Dictionary & Set Enhancements" begins now and runs through next Tuesday, April 11th. The proposal is available here:
> https://github.com/apple/swift-evolution/blob/master/proposals/0165-dict.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. When replying, please try to keep the proposal link at the top of the message:
>
> Proposal link:  https://github.com/apple/swift-evolution/blob/master/proposals/0165-dict.md
>
> Reply text
>
> Other replies
>
> 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 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,
>
> Ben Cohen
> Review Manager
>
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170405/f833ce4d/attachment.html>


More information about the swift-evolution mailing list