Hi,

In message "Re: b = i if i = a doesn't work?"
    on Wed, 21 Sep 2005 07:22:07 +0900, Devin Mullins <twifkak / comcast.net> writes:

|>Recently I was suprised by the behavior of "start = lambda { start }".
|
|Undecorated symbols aren't interpreted until they're executed.

"executed" is not a precise word.  Local variables are not recognized
until their first assignments are seen in the program.  In the
original case,

  b = i if i = a

the first assignment "i = a" comes after the reference to the variable "i".

							matz.