<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 <<a href="mailto:me@jo2.co" class="">me@jo2.co</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 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 & respond to proposals. </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 <<a href="mailto:clattner@apple.com" class="">clattner@apple.com</a>> 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 <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> 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 “><span class="" style="font-family: Menlo; font-size: 11px;">*</span><“ or “|<span class="" style="font-family: Menlo; font-size: 11px;">*</span>|” </div></div></div></blockquote><div class=""><br class=""></div></div>Check out Replace Logical Operators (&&, ||, 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 <b class="">third party libraries</b><b style="font-weight: normal;" class=""> </b>to have their own unique grammar.<br class=""> <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. Violating that would make it impossible to parse a swift file without parsing all of its imports. 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>