<https://github.com/apple/swift-evolution/blob/master/proposals/
0086-drop-foundation-ns.md>

+1 to dropping the NS prefix; type names are more readable. However:

* AppKit, CoreData, and TextKit will still use the NS prefix.
* Prefixed names (in all frameworks) are more "googleable".
* Should deprecated types (e.g. NSMessagePort) keep the prefix?

+1 to using nested enums/options; it will make method signatures shorter.

You could also have a nested RunLoop.Timer class (cf. CFRunLoopTimer) and
move your experimental `scheduledTimer` method to the RunLoop class.

Will top-level constants/functions also be nested? For example:

* SE-0033: Import Objective-C Constants as Swift Types
* SE-0044: Import as Member

Missing from the "Drop NS prefix" list:

* NSBinarySearchingOptions
* NSCopying, NSMutableCopying
* NSDirectoryEnumerator
* NSEnumerationOptions
* NSEnumerator
* NSExpression
* NSNull
* NSSecureCoding
* NSSortOptions

Missing from the "Hoisted types" list:

* NSAffineTransformStruct
* NSDateComponentsFormatterUnitsStyle
* NSDateComponentsFormatterZeroFormattingBehavior
* NSRoundingMode

-- Ben


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

Reply via email to