[swift-evolution] Mutability for Foundation types in Swift

Dave Abrahams dabrahams at apple.com
Fri Apr 22 13:30:34 CDT 2016

on Fri Apr 22 2016, Sean Heber <swift-evolution at swift.org> wrote:

> I don’t have anything significant to say other than that this is awesome.

+1; way to go, Tony et al!

> l8r
> Sean
>> On Apr 22, 2016, at 12:18 PM, Tony Parker via swift-evolution <swift-evolution at swift.org> wrote:
>> Dear swift-evolution denizens,
>> As you know from our announcement of Swift Open Source and our work
>> on naming guidelines, one of our goals for Swift 3 is to “drop NS”
>> for Foundation. We want to to make the cross-platform Foundation API
>> that is available as part of swift-corelibs feel like it is not tied
>> to just Darwin targets. We also want to reinforce the idea that new
>> Foundation API must fit in with the language, standard library, and
>> the rapidly evolving design patterns we see in the community.
>> You challenged us on one part of this plan: some Foundation API just
>> doesn’t “feel Swifty”, and a large part of the reason why is that it
>> often does not have the same value type behavior as other Swift
>> types. We took this feedback seriously, and I would like to share
>> with you the start of an important journey for some of the most
>> commonly used APIs on all of our platforms: adopting value semantics
>> for key Foundation types.
>> We have been working on this for some time now, and the set of diffs
>> that result from this change is large. At this point, I am going to
>> focus effort on an overview of the high level goals and not the
>> individual API of each new type. In order to focus on delivering
>> something up to our quality standards, we are intentionally leaving
>> some class types as-is until a future proposal. If you don’t see
>> your favorite class on the list — don’t despair. We are going to
>> iterate on this over time. I see this as the start of the process.
>> One process note: we are still trying to figure out the best way to
>> integrate changes to API that ship as part of the operating system
>> (which includes Foundation) into the swift-evolution review
>> process. Swift-evolution is normally focused on changes to
>> functionality in the compiler or standard library. In general, I
>> don’t expect all new Foundation API introduced in the
>> Darwin/Objective-C framework to go through the open source
>> process. However, as we’ve brought up this topic here before, I felt
>> it was important to bring this particular change to the
>> swift-evolution list.
>> As always I welcome your feedback.
>> https://github.com/apple/swift-evolution/blob/master/proposals/0069-swift-mutability-for-foundation.md
>> Thanks,
>> - Tony
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution


More information about the swift-evolution mailing list