[swift-evolution] [Proposal Draft] Literal Syntax Protocols
Matthew Johnson
matthew at anandabits.com
Fri Jul 1 11:12:44 CDT 2016
> On Jul 1, 2016, at 11:00 AM, Erica Sadun <erica at ericasadun.com> wrote:
>
> The best way to pass the Dave Test is to ask him directly, for example:
>
> Dave:
>
> Do you think the stdlib team would be okay with a naming scheme like
> Syntax.Literal.ArrayProtocol, Syntax.Literal.IntegerProtocol, etc. We think
> this produces a clear description of the conformant role and one that is unlikely to be
> misinterpreted. It may read less fluently but it's also less subject to confusing users.
>
> This naming scheme uses the Syntax namespacing, and creates a Literal subspace.
> Each protocol is named as "XXXXProtocol". This introduction a distinction between
> "This is/can be used as an integer literal" and "Conforming to this protocol ensures
> that an instance of the type can be written as an integer literal".
>
> The problem with earlier approximations was that people saw "Syntax.IntegerLiteralXXX"
> and thought the typed could be substituted into expressions where an integer literal
> was used, and not that an integer literal could be be used to write an instance of
> the type.
>
> So what do (and your team) think of this idea?
>
> -- Adrian (and Erica)
This one has been added to the alternatives section of the proposal. I expect the bike shedding to continue during review and expect the core team to exercise judgement in selecting the final naming scheme.
>
>
>> On Jul 1, 2016, at 2:08 AM, Adrian Zubarev via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>
>> We haven’t pass the dave test yet? :D
>>
>> Still curious what he’d say about Syntax.Literal.*Protocol
>>
>> One more question:
>>
>> What can the namespace Syntax could be used for except for literals, any idea? (I have no clue.)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160701/c7a2c1e3/attachment.html>
More information about the swift-evolution
mailing list