[swift-evolution] [Review] SE-0023 API Design Guidelines
Erica Sadun
erica at ericasadun.com
Mon Feb 1 19:39:06 CST 2016
> Dave, Breaker of Worlds, Hammer of Cocoa, Bringer of Swift:
>
>> Me:
>> The guidance says: "Protocols that describe what something is should
>> read as nouns (e.g. ). Protocols that describe a capability should be
>> named using the suffixes , ible , or ing (e.g. Equatable ,
>> ProgressReporting )."
>
> You dropped aout "able" before the comma.
1. That would explain a lot.
2. Cut & paste. I swear.
> Nitpickage:
>>
>> "should be named using -ble or -ing suffixes (e.g. Equatable,
>> ProgressReporting)". (no "a/i" mismatch, easier to read,
>> http://thespellingblog.blogspot.com/2008/12/spelling-words-ending-in-able-and-ible.html <http://thespellingblog.blogspot.com/2008/12/spelling-words-ending-in-able-and-ible.html>)
>
> I don't understand how that improves things. Some words just *do* use
> an "ible" form (e.g. fallible)
3. Because you were saying just ible not able and ible. (see points 1 and 2)
(Some day Able and Ible will be a web comic series about mutant supernatural linguists, I'm sure of it.)
> Substance, mostly picking up from stuff you've said in response:
>>
>> Protocols should express well-defined, testable semantics. Their names
>> should express those semantics in a clear and succinct matter.,
>> specifically by naming what a conforming type is (use nouns), does
>> (use -ing suffixes), or a capacity it provides (use -ble
>> suffixes). For example, a protocol can be a `Collection` or
>> `DataSource`. It can do `ProgressReporting` or
>> `DownloadProcessing`. It can provide the capability for being
>> `Equatable` or `IntegerInitializable`.
>
> That seems like a nice addition.
>
>> Additionalage:
>>
>> Matthew J and I add: https://github.com/apple/swift-evolution/pull/60 <https://github.com/apple/swift-evolution/pull/60>
>> <https://github.com/apple/swift-evolution/pull/60 <https://github.com/apple/swift-evolution/pull/60>> to introduce
>> precise conventional
>> meanings for conversion suffixes. (Createable, Convertible, Representable), which I'd love for you to consider
>> under the SE-0023 API Design Guidelines review. I think it's applicable.
>
> Yes, let's get that on the review schedule after this.
Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160201/dc54507d/attachment.html>
More information about the swift-evolution
mailing list