[swift-evolution] [Review] SE-0115: Rename Literal Syntax Protocols

Dave Abrahams dabrahams at apple.com
Tue Jul 5 16:17:50 CDT 2016


on Tue Jul 05 2016, Jordan Rose <jordan_rose-AT-apple.com> wrote:

> [Proposal:
> https://github.com/apple/swift-evolution/blob/master/proposals/0115-literal-syntax-protocols.md
> <https://github.com/apple/swift-evolution/blob/master/proposals/0115-literal-syntax-protocols.md>
> ]
>
>> On Jul 3, 2016, at 9:52, David Sweeris via swift-evolution <swift-evolution at swift.org> wrote:
>> 
>> 
>>> On Jul 2, 2016, at 23:16, Erica Sadun via swift-evolution <swift-evolution at swift.org> wrote:
>>> 
>>> Change it to "Syntax.ExpressibleByIntegerLiteral" and I'd be onboard but
>>> I don't think it would pass the DaveTest despite it being only 2 characters longer.[1]
>> 
>> Yeah, I agree with "By" instead of "As". It makes it a bit clearer
>> that these protocols kinda work backwards, so to speak. That is, if
>> I understand things correctly, rather than adding
>> functionality/semantics to the conforming type, conforming to a
>> literal protocol adds functionality/semantics to the corresponding
>> literal "type" (which we can't directly interact with because they
>> don't actually exist within Swift's type system).
>
> I like "By" much better than "As". For me, "expressible as integer
> literal" has the meaning we don't want, with no hint of ambiguity:
> "you can go from a concrete type to a literal" (rather than the
> correct "you can go from a literal to a concrete type").

I'm not opposed to “By” if many more people think it's clearer.

-- 
Dave


More information about the swift-evolution mailing list