[swift-evolution] [Review] SE-0006 Apply API Guidelines to the Standard Library

Goffredo Marocchi panajev at gmail.com
Sat Jan 30 03:44:19 CST 2016



> On 30 Jan 2016, at 02:47, Alex Migicovsky via swift-evolution <swift-evolution at swift.org> wrote:
> 
> IMO the ‘like’ suffix makes it sound like the conforming type to Collectionlike is like a Collection, but not exactly a Collection.

and isn't this the point of protocols? To decouple the behaviour you expose/the contract you make from what you actually are/how you are implemented?

> Maybe there’s another suffix that works but I don’t think this one conveys the right information.
> 
> - Alex
> 
>>> On Jan 29, 2016, at 6:43 PM, Brent Royal-Gordon via swift-evolution <swift-evolution at swift.org> wrote:
>>> 
>>> Count me among those who liked the ‘Type’ suffix for protocols though.
>> 
>> I wonder if we can't change it to a -`like` suffix. Applying that to 2.1 stdlib gives you:
>> 
>> AnyCollectionlike
>> BidirectionalIndexlike
>> BitwiseOperationslike
>> Booleanlike
>> CVarArglike
>> Collectionlike
>> Errorlike
>> FloatingPointlike
>> ForwardIndexlike
>> Generatorlike
>> IntegerArithmeticlike
>> Integerlike
>> Intervallike
>> LazyCollectionlike
>> LazySequencelike
>> MirrorPathlike
>> MutableCollectionlike
>> OptionSetlike
>> OutputStreamlike
>> RandomAccessIndexlike
>> RangeReplaceableCollectionlike
>> ReverseIndexlike
>> Sequencelike
>> SetAlgebralike
>> SignedIntegerlike
>> SignedNumberlike
>> UnicodeCodeclike
>> UnsignedIntegerlike
>> 
>> Not all of these are perfect, but in some cases that's because they should arguably be -able protocols (BitwiseOperationsType -> BitwiseOperable).
>> 
>> -- 
>> Brent Royal-Gordon
>> Architechies
>> 
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution
> 
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160130/f7f5561d/attachment.html>


More information about the swift-evolution mailing list