On Tue, Dec 29, 2015, at 01:33 PM, Daniel Duan wrote:
> For concrete types that conform to CollectionType:
> 
> [2, 1, 3].removeFirst()    // => 2
> [2, 1, 3].removingFirst() // => [1, 3]
> 
> seems like what the “non-mutating counterpart” guideline is aiming for. As 
> another example, the guideline includes “stripNewlines()” and 
> “strippingNewlines()”.
> 
> For SequenceType conforming types that aren’t CollectionTypes, they would be 
> stuck with “removingFirst()”, which, technically, is a noun phrase (again, 
> not my personal favorite). I don’t this result is against anything in the 
> guidelines.

It's technically not a noun phrase at all. I believe you're thinking of 
gerunds, where a verb with an -ing ending is used as a noun. But "removing" in 
"removingFirst()" is not being used as a noun; the method does not represent 
the act of removing, but instead it returns a new value constructed "by 
removing first". I believe this is called the Present Participle.

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

Reply via email to