<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Jul 1, 2016, at 11:00 AM, Erica Sadun <<a href="mailto:erica@ericasadun.com" class="">erica@ericasadun.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">The best way to pass the Dave Test is to ask him directly, for example:</div><div class=""><br class=""></div><div class=""><i class="">Dave:</i></div><div class=""><i class=""><br class=""></i></div><div class=""><i class="">Do you think the stdlib team would be okay with a naming scheme like </i></div><div class=""><i class=""><b class=""><font face="Menlo" class="">Syntax.Literal.ArrayProtocol</font></b>, <b class=""><font face="Menlo" class="">Syntax.Literal.IntegerProtocol</font></b>, etc. We think </i></div><div class=""><i class="">this </i><i class="">produces a clear description of the conformant role and one that is unlikely to be </i></div><div class=""><i class="">misinterpreted. It may read less fluently but it's also less subject to confusing users. </i></div><div class=""><i class=""><br class=""></i></div><div class=""><i class="">This naming scheme uses the <font face="Menlo" class="">Syntax</font> namespacing, and creates a <font face="Menlo" class="">Literal</font> subspace. </i></div><div class=""><i class="">Each protocol is named as "XXXXProtocol". This introduction a distinction between </i></div><div class=""><i class="">"This is/can be used as an integer literal" and "Conforming to this protocol ensures</i></div><div class=""><i class="">that a<span style="font-family: Palatino-Roman;" class="">n instance of the type can be written </span></i><i style="font-family: Palatino-Roman;" class="">as an integer literal". </i></div><div class=""><span style="font-family: Palatino-Roman;" class=""><i class=""><br class=""></i></span></div><div class=""><span style="font-family: Palatino-Roman;" class=""><i class="">The problem with earlier approximations was that people saw "Syntax.IntegerLiteralXXX" </i></span></div><div class=""><span style="font-family: Palatino-Roman;" class=""><i class="">and thought the typed could be substituted into expressions where an integer literal</i></span></div><div class=""><font face="Palatino-Roman" class=""><i class="">was used, and not that an integer literal could be be used to write an instance of </i></font></div><div class=""><font face="Palatino-Roman" class=""><i class="">the type.</i></font></div><div class=""><font face="Palatino-Roman" class=""><i class=""><br class=""></i></font></div><div class=""><font face="Palatino-Roman" class=""><i class="">So what do (and your team) think of this idea?</i></font></div><div class=""><i class=""><br class=""></i></div><div class=""><i class="">-- Adrian (and Erica)</i></div></div></div></blockquote><div><br class=""></div><div>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.</div><div><br class=""></div><br class=""><blockquote type="cite" class=""><div class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class=""><br class=""></div><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Jul 1, 2016, at 2:08 AM, Adrian Zubarev via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="bloop_markdown" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(254, 254, 254);"><p style="margin: 15px 0px; -webkit-margin-before: 0px;" class="">We haven’t pass the dave test yet? :D<span class="Apple-converted-space"> </span></p><p style="margin: 15px 0px;" class="">Still curious what he’d say about<span class="Apple-converted-space"> </span><code style="font-family: Menlo, Consolas, 'Liberation Mono', Courier, monospace; font-size: 10pt; border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; background-color: rgb(248, 248, 248); color: inherit; border: 1px solid rgb(234, 234, 234); margin: 0px 2px; padding: 0px 5px; word-break: normal; word-wrap: normal; -webkit-margin-before: 0px;" class="">Syntax.Literal.*Protocol</code></p><p style="margin: 15px 0px;" class="">One more question:</p><ul style="margin: 15px 0px;" class=""><li style="margin: 15px 0px; -webkit-margin-before: 0px;" class="">What can the namespace<span class="Apple-converted-space"> </span><code style="font-family: Menlo, Consolas, 'Liberation Mono', Courier, monospace; font-size: 10pt; border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; background-color: rgb(248, 248, 248); color: inherit; border: 1px solid rgb(234, 234, 234); margin: 0px 2px; padding: 0px 5px; word-break: normal; word-wrap: normal; -webkit-margin-before: 0px;" class="">Syntax</code><span class="Apple-converted-space"> </span>could be used for except for literals, any idea? (I have no clue.)</li></ul></div></div></blockquote></div><br class=""></div></div></blockquote></div><br class=""></body></html>