<div dir="ltr">Inline:<div class="gmail_extra"><br><div class="gmail_quote">2016-04-10 2:27 GMT+03:00 Maximilian Hünenberger <span dir="ltr">&lt;<a href="mailto:m.huenenberger@me.com" target="_blank">m.huenenberger@me.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div></div><div><br></div><div>Am 09.04.2016 um 19:43 schrieb Антон Жилин &lt;<a href="mailto:antonyzhilin@gmail.com" target="_blank">antonyzhilin@gmail.com</a>&gt;:<br>[...]</div><blockquote type="cite"><div><div dir="ltr"><span class=""><div>Now, I see only 1 large question/problem risen by David Waite:</div><div>Should precedence relationships be defined inside or outside of precedence groups?</div><div>That is: should we be able to add arbitrary relationships between existing groups?</div></span><div>[...]</div></div>
</div></blockquote><br><div>I&#39;m in favor of declaring precedence relationships inside precedencegroup declarations. So they have a fixed place where they are defined.</div></div></blockquote><div><br></div><div>I&#39;m inclined to agree, but still not completely sure. Maybe someone else could add a vote? Chris? :)</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>The only minor syntax issue I have is that it is not immediately clear which operators belong to a precedence group. The former syntax with the &quot;members(+, -)&quot; solved this issue. However this has (currently) an extensibility problem:</div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>If you define a new operator and it should belong to a precedencegroup where you have no access to its source (like Additive) then the whole argument about having operators in one place.</div></div></blockquote><div><br></div><div>My thoughts went as follows.</div><div>We should be able to add operators to existing groups, for example, defined in the Standard Library.</div><div>If so, then this this statement should belong to operator, not precedence group.</div><div>But we have to declare the operator anyway, so adding `: Additive` or something to the declaration does not cause huge code bloat. Especially considering operators are not defined very often.</div><div>Now, we have two ways to do the same thing. External declaration is necessary and not so bad. So, following a widely known principle, I remove `members`.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Another minor issue regarding your implementation of the standard library operators: &quot;Additive&quot; and all &quot;Bitwise&quot; precedencegroups should be above &quot;Range&quot;<br></div><div><br></div><div>// so this is also possible without parentheses</div><div>(1+2) ... (3+5)</div><div><br></div><div>This issue can be brought up again during another proposal which implements this proposal. So the standard library changes <b>should not</b> belong to this proposal (or least be clarified).</div></div></blockquote><div><br></div><div>Agreed. I will edit that part to form a hierarchy that exactky matches current state of things.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><br></div><div>Kind regards</div><span class="HOEnZb"><font color="#888888"><div>- Maximilian</div></font></span></div></blockquote></div><br></div></div>