> On Jul 5, 2016, at 6:37 PM, Joe Groff <jgr...@apple.com> wrote:
> 
>> 
>> On Jul 5, 2016, at 9:06 AM, Charlie Monroe via swift-evolution 
>> <swift-evolution@swift.org> wrote:
>> 
>> +1, but I'm not a big fan of the proposed Optional -> NSNull bridging which 
>> can cause various hard-to-debug issues with errors "NSNull doesn't respond 
>> to a selector -foo".
> 
> I'm not proposing that particular mapping as part of this proposal, only as a 
> potential future direction. However, these issues should be avoided by 
> dynamic casting type checks. An untyped NSArray that contains NSNulls would 
> come into Swift as an [Any], and would fail to dynamically cast to [Foo]. 
> You'd have to cast it to [Foo?], which would force you to handle the NSNulls 
> as Swift nils.

Ok, though my bigger concern was the other way around - passing accidently 
array of [Foo?] to an ObjC class that takes id as an argument.

But other than this, the proposal will make the code Swiftier and it is 
definitely the correct direction for Swift in general!

> 
> -Joe
> 
>> 
>> Most APIs that take "id" as an argument usually specify several types that 
>> the API accepts (e.g. arrays and dictionaries), but passing in NSNull is not 
>> acceptable. I believe this change would create confusion rather than 
>> eliminate it as is the goal of this proposal.
>> 
>>> On Jul 5, 2016, at 5:45 PM, Chris Lattner via swift-evolution 
>>> <swift-evolution@swift.org> wrote:
>>> 
>>> Hello Swift community,
>>> 
>>> The review of "SE-0116: Import Objective-C id as Swift Any type" begins now 
>>> and runs through July 11. The proposal is available here:
>>> 
>>>     
>>> https://github.com/apple/swift-evolution/blob/master/proposals/0116-id-as-any.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.
>>> 
>>> What goes into a review?
>>> 
>>> The goal of the review process is to improve the proposal under review 
>>> through constructive criticism and contribute to 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,
>>> 
>>> -Chris Lattner
>>> Review Manager
>>> 
>>> 
>>> _______________________________________________
>>> swift-evolution mailing list
>>> swift-evolution@swift.org
>>> https://lists.swift.org/mailman/listinfo/swift-evolution
>> 
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution@swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to