On 9/12/07, Robert Klemme <shortcutter / googlemail.com> wrote: > 2007/9/12, Logan Capaldo <logancapaldo / gmail.com>: > > On 9/11/07, dblack / wobblini.net <dblack / wobblini.net> wrote: > > > > > > > > I think the only hurdle is just realizing that: > > > > > > {|x| ... } > > > > > > is an assignment to x. After that, it's no more dangerous or > > > error-prone than any other occasion when you have to choose a name for > > > a temporary (or not) variable and assign to it. > > > > > It's not though. It's _almost_ like an assignment to x, except when > > it's like passing a parameter. If it really was always just assigning > > to x, my example would overflow in both cases, which while not my > > personal ideal, would make me happier than the current situation. > > Actually I believe David is right. It *is* just an assignment to x > but you have to keep in mind the scoping rules of blocks. Basically > the notation |x| is just a shortcut for an assignment with a parameter > when the block is called. But the general scoping rule for local > variables in blocks is that they are block local when not defined > outside of the block. This is the same regardless whether a var name > occurs between bars or on the left side of an assignment. > I'm pretty sure everything you said is factual. I still think it's wrong. > Kind regards > > robert > >