Just my 2¢, from the point of view of someone runs into SwiftObject frequently: 
I’d really appreciate it if this class had “Swift” in it’s name. At first 
glance, it’s name in mangled form (“_TtCs7_Object”) gives no indication as to 
where it’s from. Obviously it’s not a “pure” Objective-C object, but it’s not 
clear that it’s a Swift object either–maybe it’s C++? Saagar’s cool new 
language that also does name mangling? Who knows. I guess “_T” is kind of 
enough to figure it out, but since you’re changing the name anyways it would be 
great if it was something that reduced my cognitive overload, like 
Swift._SwiftObject.

If you’re going to expose this to Swift as well, a similar argument applies: 
from it’s name, it’s not clear that it’s part of Objective-C interop. I’m not 
sure if this is visible to Swift programmers, and if it isn’t this isn’t an 
issue, but in the case that it is Swift._Object looks more like a private 
implementation detail of a base class akin to NSObject in Objective-C or Object 
in Java than a compatibility shim with Objective-C.

Saagar Jha

> On Jan 4, 2018, at 19:10, Greg Parker via swift-evolution 
> <[email protected]> wrote:
> 
> SwiftObject is an Objective-C class that is the base class of all "pure 
> Swift" class types. It needs to be renamed for the Swift stable ABI in order 
> to avoid ObjC class name collisions between the stable ABI's Swift runtime 
> and the runtime embedded into existing Swift apps.
> 
> I suggest `Swift._Object`, mangled as _TtCs7_Object like other Swift ObjC 
> class names. 
> 
> Any comments?
> 
> https://github.com/apple/swift/pull/13748 
> <https://github.com/apple/swift/pull/13748>
> 
> 
> -- 
> Greg Parker     [email protected] <mailto:[email protected]>     Runtime 
> Wrangler
> 
> 
> _______________________________________________
> swift-evolution mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-evolution

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to