[swift-evolution] SetAlgebra naming update
Erica Sadun
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:
>>>
>>> http://dabrahams.github.io/swift-naming/SetAlgebra-Math.html
>>>
>>> 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:
* excluding
* differenceFrom
* minus
* excepting
* subtractingElementsFrom / subtractingElements(from: or of:
-- E
More information about the swift-evolution
mailing list