<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 24 April 2018 at 08:12, Greg Ewing <span dir="ltr"><<a href="mailto:greg.ewing@canterbury.ac.nz" target="_blank">greg.ewing@canterbury.ac.nz</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Chris Jerdonek wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
if (diff := x - x_base) and (g := gcd(diff, n)) > 1:<br>
</blockquote></blockquote></blockquote>
<br>
</span><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
"if diff, which we let equal x - x_base, and g, which ..." or<br>
"if diff, which we set equal to x - x_base, and g, which ...." or<br>
"if diff, which we define to be x - x_base, and g, which ...." or<br>
"if diff, which we define as x - x_base, and g, which ....." etc.<br>
</blockquote>
<br></span>
How about "being" as a keyword:<br>
<br>
  if (diff being x - x_base) and (g being gcd(diff, n)) > 1:<br>
    return g<br>
<br>
An advantage is that you're not likely to be tempted to write<br>
<br>
   diff being x - x_base<br>
<br>
on its own as a statement.<span class=""><br>
<br></span></blockquote><div><br></div><div>I like this term, but I don't like having more reserved words. Or PEP can make it an official way to read :=</div><div><br></div><div>(z := x + y) is _called_ a binding expression.</div><div>(z := x + y) _reads_ as "z being x + y"</div><div><br></div><div>--</div><div>Ivan</div><div><br></div><div><br></div></div></div></div>