[swift-evolution] [Review] SE-0016 - Adding initializers to Int and UInt to convert from UnsafePointer and UnsafeMutablePointer
fukurokujoe at googlemail.com
Mon Mar 28 06:47:06 CDT 2016
> * What is your evaluation of the proposal?
> * Is the problem being addressed significant enough to warrant a change to Swift?
No `UnsafePointer` and `UnsafeMutablePointer` already provide their address as Int by their `hashValue` property (maybe add a dedicated `address` property that returns this???), this means it is already possible to do XOR on the addresses of two pointers.
> * Does this proposal fit well with the feel and direction of Swift?
No, UnsafePointer and UnsafeMutablePointer etc. should be only used in rare cases e.g. interaction with C APIs or similar.
But maybe there should be a dedicated `address` property as `hashValue` seems to be a bit non obvious.
> * If you have you used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?
Everything in the proposal is already possible and if one creates a XOR operator for unsafe pointers via their `hashValue` it
does not differ too much from doing the same thing in a language like C.
> * How much effort did you put into your review? A glance, a quick reading, or an in-depth study?
Implemented functions that make use of XORing unsafe pointers in Swift.
More information about the swift-evolution