<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 Jan 7, 2016, at 5:26 PM, Jo Albright &lt;<a href="mailto:me@jo2.co" class="">me@jo2.co</a>&gt; 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 apple-content-edited="true" class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: 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; float: none; display: inline !important;" class=""><div class=""><div apple-content-edited="true" class=""><div class=""><div class="">Chris - I really appreciate that you take the time to entertain &amp; respond to proposals.&nbsp;</div></div></div></div><div class=""><br class=""><blockquote type="cite" style="font-weight: normal;" class=""><div class="">On Jan 7, 2016, at 7:24 PM, Chris Lattner &lt;<a href="mailto:clattner@apple.com" class="">clattner@apple.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Jan 7, 2016, at 1:31 AM, Jo Albright via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div class="">As my obsession grows with custom operators. I have come across wanting to use small words or 1-2 alphabetical characters as custom operators. I noticed that “as” and “is” are character based operators and figured it wouldn’t hurt to propose the allowance of character based custom operators.</div><div class=""><br class=""></div><div class="">Here are my reasons for allowing them:</div><div class=""><br class=""></div><div class="">1. easier to read “within” vs “&gt;<span class="" style="font-family: Menlo; font-size: 11px;">*</span>&lt;“ or “|<span class="" style="font-family: Menlo; font-size: 11px;">*</span>|”&nbsp;</div></div></div></blockquote><div class=""><br class=""></div></div>Check out Replace Logical Operators (&amp;&amp;,&nbsp;||, etc) with words like "and" and “or":<div class=""><a href="https://github.com/apple/swift-evolution/blob/master/commonly_proposed.md" class="">https://github.com/apple/swift-evolution/blob/master/commonly_proposed.md</a></div></div></div></blockquote><div style="font-weight: normal;" class=""><br class=""></div>I completely agree with that proposal being rejected. I am not asking to replace existing language grammar. My desire is for the support of alphabetical characters for custom operators to allow&nbsp;<b class="">third party libraries</b><b style="font-weight: normal;" class=""> </b>to have their own unique grammar.<br class="">&nbsp;<br class=""><blockquote type="cite" style="font-weight: normal;" class=""><div class="" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div class="">There is very small win here of “x foo y” over "x.foo(y)”?</div></div></blockquote><div style="font-weight: normal;" class=""><br class=""></div><div style="font-weight: normal;" class="">And I completely agree that function/method syntax can easily suffice for normal circumstances. Just trying to see how far Swift can be stretched.</div></div></span></div></div></div></blockquote><br class=""></div><div>Hi Jo,</div><div><br class=""></div><div>The rationale is the same - the design of Swift really wants operators and identifiers to be partitioned into different namespaces. &nbsp;Violating that would make it impossible to parse a swift file without parsing all of its imports. &nbsp;This is a mistake that C made (you have to parse all the headers a file uses to reliably parse the file) that we don’t want to replicate in Swift.</div><div><br class=""></div><div>-Chris</div><br class=""></body></html>