<div dir="ltr">For reference, here are the sets Haskell uses: <a href="http://stackoverflow.com/a/10616227">http://stackoverflow.com/a/10616227</a><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div>Jacob Bandes-Storch<br></div></div></div></div>
<br><div class="gmail_quote">On Thu, Dec 17, 2015 at 6:05 PM, Ethan Tira-Thompson via swift-evolution <span dir="ltr"><<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><span class=""><div><blockquote type="cite"><div>On Dec 17, 2015, at 4:19 PM, Chris Lattner <<a href="mailto:clattner@apple.com" target="_blank">clattner@apple.com</a>> wrote:</div><br><div><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>On Dec 17, 2015, at 4:15 PM, Greg Parker via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>> wrote:</div><br><div><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>On Dec 17, 2015, at 12:14 PM, Ethan Tira-Thompson via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>> wrote:</div><div><div style="word-wrap:break-word"><div><br></div>I wanted to use ‘·’ as a dot-product operator, but it’s not currently defined as an operator character. (<a>rdar://problem/23930008</a> suggested I come here for comment.)<div><br><div>Note that dot operator (⋅, U+22C5) is already available for operators and semantically appropriate, but Mac users can conveniently type option-shift-9 to get the middle dot which is a nice feature and consequently it’s more well-known. FWIW, we have U+00B6 (¶) already defined as an operator, this would extend its range by one.</div></div></div></div></blockquote><br></div><div>IHNTA, IJWTS "🐶 is an identifier but ⚽︎ is an operator, according to Swift's current rules.”</div></div></div></blockquote></div><br><div>I’m not sure what the initialisicms stand for, but any proposal that breaks:</div><div><br></div><div><span style="white-space:pre-wrap">        </span>let 🐶🐮 = "moof"</div><div><br></div><div>will not be tolerated. :-) :-)</div><div><br></div><div>-Chris</div><div><br></div></div></div></blockquote></div><br></span><div>Perhaps there’s a way to avoid having to statically classify all of unicode into operator vs. identifier characters?</div><div><br></div><div>For example, could this be done dynamically, where the compiler tracks the characters used for each group as it goes, and only complains if it encounters a conflict with a previous declaration?</div><div><br></div><div>This does introduce a possibility to have conflicts between a piece of code and an imported API, but the odds of a conflict seem on the scale of other namespace clashes. (Much less IMHO, and even in the case of such a conflict, are we really better suited to have preemptively decided between them?)</div><div><br></div><div>If nothing else, debating individual characters like this seems like it will get old really fast, and runs a similar risk of conflicts with pre-existing code on each change. (perhaps greater actually since it’s globally enforced rather than scoped by individual import.)</div><div><br></div><div>-Ethan</div><div><br></div>
<img src="https://u2002410.ct.sendgrid.net/wf/open?upn=P-2BsYbBZHRBuLDBJaL4DIKDNfkkjpROowTyRAObV11qzsA7ALxqHQteOFoI1i-2FNRQD9T2c7w8P6gaEco6mAuSJF3vtBA5wxTQnjMFNm6D5II-2FS81sCucvLLe9JRX6jd6cXt7XOHy-2FTbuFTp4ymbGta2mEOGBiGD4zdTl1rt9oeWWHxdGM0kIYqjy7-2FP8D6veUBpVbtH2n6roA9Q3c-2B2ecBLIVig9Sx56-2BlZbzYsbzxgg-3D" alt="" width="1" height="1" border="0" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important">
</div>
<br>_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
<br></blockquote></div><br></div></div>