Hi all,

I found that

  if (variable = expr)
    ... do something with variable ...
  end

works, whereas

  ... do something with variable ... if (variable = expr)

doesn't.

I can't find a good reason why these two forms differ in semantics.

Moreover, both seem to be represented by the same AST internally. 
Meaning that parse_tree returns identical ASTs.

I wonder whether this is by accident or by design? Can someone please 
shed some light on this?


-- Stefan Kaes