> 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