I asked this question more than a year ago, and I think it's only going to get more urgent over time.
Scenario: I have an app which wants to use framework A and B.
Both framework A and B write the totally, and blindingly obvious helper function
public func + (left: CGPoint, right: CGPoint) -> CGPoint {
return CGPoint(x: left.x + right.x, y: left.y + right.y)
}
Now, my App would like to also take advantage of operator overloading. But how will it manage this?
The two external frameworks it links against both provide definitions, so now they both cannot be brought into the same project if the App itself tries to make use of the overloading (even if the App decided to define it for a third time).
If we don't provide standard overloads for this obvious stuff, we'll soon have libraries that just can't be used together.
Is there any solution on the horizon?