<div dir="ltr">David Waite stated a major drawback of precedence groups.<div><br></div><div>People will often create tiny precedence groups for their modules, and user will find that some of them should actually be the same. They will add precedenceEqualTo, but all these equivalent groups will still exist. This problem cannot occur with transitive precedence propagation. So precedence groups really create more problems than solve.</div><div><br></div><div>- Anton</div><div><br>Apr 5, 2016, Антон Жилин  wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On the other hand, in your solution you have a list of global rules and don&#39;t really need braces. How about this? </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">#precedenceGroup(Additive)<div>#precedenceGroup(Multiplicative)</div><div>#precedence(Additive, less, Multiplicative)</div>#operator(+, infix, associativity: left, group: Additive)<div>#operator(*, infix, associativity: left, group: Multiplicative)</div><div>#operator(&lt;&gt;, infix)</div><div><br></div><div>So precedence group is just a tag that can be used in precedence rules and assigned to operators at declaration.</div>
</blockquote></div>
</div>