<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 Jun 23, 2016, at 8:18 AM, Anton Zhilin 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="">1. I've revised the proposal to mostly meet the recommendations.<br class=""></div></div></blockquote><div><br class=""></div>Thanks continuing to push this forward! I’m really looking forward to this change and hope the revision is met with acceptance.</div><div> <br class=""><blockquote type="cite" class=""><div class=""><div class=""><br class=""><a href="https://github.com/Anton3/swift-evolution/blob/master/proposals/0077-" class="">https://github.com/Anton3/swift-evolution/blob/master/proposals/0077-</a><br class="">operator-precedence.md<br class=""><br class="">2. My reaction to the rationale:<br class=""><br class="">precedencegroup Foo {<br class=""> associativity: left<br class=""> strongerThan: Bar<br class=""> weakerThan: Bas<br class="">}<br class=""><br class="">I agree with colons, but I would prefer above and below. Anyway, core <br class="">team will have at least one more chance to change their mind.<br class=""></div></div></blockquote><div><br class=""></div><div>This is the first time I have encountered the “stronger” and “weaker” terminology in this context. I am curious about the rationale for preferring those.</div><div><br class=""></div><div>FWIW, I also prefer `above` and `below`. The terms I am most familiar with in discussing precedence are “higher” and “lower” (and is the vocabulary used here: <a href="https://en.wikipedia.org/wiki/Order_of_operations" class="">https://en.wikipedia.org/wiki/Order_of_operations</a> for example). However, as with `strongerThan` and `weakerThan`, these would require `higherThan` and `lowerThan` in order to read well. `above` and `below` have a strong relationship to that common vocabulary while being more concise because they do not require including a word that only serves to make our code read like a phrase while offering no information.</div><div><br class=""></div><blockquote type="cite" class=""><div class=""><div class=""><br class="">- The proposal states that precedence groups live in a separate <br class="">namespace from other declarations; however, this is unprecedented in <br class="">Swift, and leads to significant implementation challenges. The core team <br class="">recommends that precedence groups exist in the same namespace as all <br class="">Swift declarations.<br class=""><br class="">How unfortunate. We will need to discuss naming convention and try not <br class="">to add too much visual clutter.<br class=""><br class="">3. I also have a suggestion to discuss.<br class=""><br class="">Under "Joining unrelated precedence groups" I see an algorithm that does <br class="">not match anything I've seen in network theory.<br class=""><br class="">My suggestion is to make it a warning, not an error. It will reduce the <br class="">pressure on the language and compilers.<br class=""><br class="">When we break down precedence hierarchy in a follow-up proposal, <br class="">developers will be able to use a library that will join precedence <br class="">groups and make their old code compile, although with warnings.<br class=""><br class="">- Anton<br class="">_______________________________________________<br class="">swift-evolution mailing list<br class=""><a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-evolution<br class=""></div></div></blockquote></div><br class=""></body></html>