[swift-evolution] [Review] SE-0140: Bridge Optional As Its Payload Or NSNull

Douglas Gregor dgregor at apple.com
Wed Sep 14 09:45:38 CDT 2016


> On Sep 10, 2016, at 1:20 AM, Fabian Ehrentraud via swift-evolution <swift-evolution at swift.org> wrote:
> 
> I'd make the warning an error by default

Swift 3.0 has already shipped without this warning, so making it an error by default would break source compatibility.

	- Doug

> 
> Am 09.09.2016 um 16:09 schrieb Fabian Ehrentraud via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>>:
> 
>> • What is your evaluation of the proposal?
>> 
>> In favor, as we already ran into crashes after migrating our project to Swift 3.
>> I'm not completely convinced though that the compiler should ignore nullabiliy markup on id. Also id has a long tradition in the ObjC community to be used instead of NSObject * which does not suffer from the problem.
>> 
>> • Is the problem being addressed significant enough to warrant a change to Swift?
>> 
>> Very much, the compiler should do everything it can to avoid runtime crashes due to programmer errors.
>> 
>> • Does this proposal fit well with the feel and direction of Swift?
>> 
>> Yes, more intelligent and useful bridging makes sense. NSNull can be problematic too, but having an Optional.some value definitely should work on the other side of the bridge too.
>> 
>> • 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?
>> 
>> I even filed a Swift bug (SR-2601) before I found this proposal explaining that nullability on id is ignored since SE-0116.
>> 
>> - Fabian
>> 
>> 
>>> On 03.09.2016, at 00:50, Douglas Gregor via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>> 
>>> Hello Swift community,
>>> 
>>> The review of SE-0140 "Bridge Optional As Its Payload Or NSNull" begins now and runs through September 8, 2016. The proposal is available here:
>>> 
>>> https://github.com/apple/swift-evolution/blob/master/proposals/0140-bridge-optional-to-nsnull.md <https://github.com/apple/swift-evolution/blob/master/proposals/0140-bridge-optional-to-nsnull.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 <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/0140-bridge-optional-to-nsnull.md <https://github.com/apple/swift-evolution/blob/master/proposals/0140-bridge-optional-to-nsnull.md>
>>> Reply text
>>> 
>>> Other replies
>>>  <https://github.com/apple/swift-evolution#what-goes-into-a-review-1>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 <https://github.com/apple/swift-evolution/blob/master/process.md>
>>> Thank you,
>>> 
>>> -Doug
>>> 
>>> Review Manager
>>> 
>>> _______________________________________________
>>> swift-evolution mailing list
>>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>>> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
>> 
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>> https://lists.swift.org/mailman/listinfo/swift-evolution <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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160914/a7bbc4ef/attachment.html>


More information about the swift-evolution mailing list