The = in C sucked ass because if you missed an = in the == operator it would <b>still</b> work. If (x = 3), kept assigning 3 to x and then saying, x != 0 so true! Then you had a major problem on your hands that the conditional redefined your variable <b>and</b> your error failed to break things so you're stuck troubleshooting why this code is suddenly totally inconsistent. This was because of the similarity to = and ==. With walrus, you don't have that risk. Unless people are going to commonly replacing an = with a :<br><br>So long as it is the case that assignment of a variable does not return the assigned variable, this won't be an issue. It is a bit too short-handy but there's no other way to do that in several use cases. I've had to code up the loops weird to avoid double calculations in the past.