Jens Wille <jens.wille / uni-koeln.de> wrote:

> Albert Schlef [2008-05-07 21:27]:
> > matt neuburg wrote:
> >> [...] since the above can be fixed using parentheses:
> >> 
> >> y += (boom rescue "fine")
> > 
> > But if `y += boom rescue "fine"` indeed translates into `y +=
> > (boom rescue "fine")` that still doesn't solve the mystery.
> no, it evaluates to '(y += boom) rescue "fine"'. the '+=' binds
> tighter than/takes precedence over 'rescue'.

Right, that's what I said. The mystery is why

y += boom rescue "fine"

translates to 

(y += boom) rescue "fine"

but

y = boom rescue "fine"

translates to

y = (boom rescue "fine")

What I'm saying is: Doesn't the user reasonably expect that = and +=
will have similar precedence? I don't really care about this any more,
now that I know that I can disambiguate for myself using parentheses;
but it feels like a bug, somehow. m.

-- 
matt neuburg, phd = matt / tidbits.com, http://www.tidbits.com/matt/
Leopard - http://www.takecontrolbooks.com/leopard-customizing.html
AppleScript - http://www.amazon.com/gp/product/0596102119
Read TidBITS! It's free and smart. http://www.tidbits.com