[swift-evolution] SetAlgebra naming update
erica at ericasadun.com
Thu Mar 24 19:38:26 CDT 2016
> On Mar 24, 2016, at 6:19 PM, Dave Abrahams via swift-evolution <swift-evolution at swift.org> wrote:
> on Thu Mar 24 2016, Erica Sadun <swift-evolution at swift.org> wrote:
>>> On Mar 24, 2016, at 2:39 PM, Dave Abrahams via swift-evolution <swift-evolution at swift.org> wrote:
>>> Just an update:
>>> The naming guidelines working group went back into negotiation over
>>> the shape of SetAlgebra (and thus, Set and OptionSet) for
>>> Swift 3, and reached a new consensus. We intend to bring forward a
>>> proposal for the API shown here:
>>> and to update the guidelines to suggest using the "form" prefix to
>>> create a verb phrase for a mutating method when the operation is
>>> fundamentally non-mutating and described by a noun.
>> I've got to say, I expected to hate this until I clicked the link and saw the actual
>> proposed syntax. For the most part, it's good: clear and readable.
>> Not a fan of "subtracting" (would prefer "bySubtracting"). Other than that
>> really impressed by how this evolved.
> x by subtracting y
> means, “give me x, and get it by subtracting y.” The use of “byXXXing”
> in existing Cocoa APIs doesn't really set a precedent because it was
> always preceded by a noun that described the result being returned,
> e.g. “x.stringByAppending(y),” which is a completely different thing.
So far in each of the naming situations where I have disliked a particular form
("subtracting" here), the final results have been good. Apparently
the strategy of pointing out the bad points and letting magic happen behind
the scenes is a successful one.
Because that's not very helpful:
* subtractingElementsFrom / subtractingElements(from: or of:
More information about the swift-evolution