On Wed, 12 Feb 2003, Pit Capitain wrote: > I expect that > obj.attr == value > and the return value of > obj.attr = value > to be the same as > obj.attr (after the assignment) > so the new behavior just feels right. # if out-of-range, auto-adjusts percent to closest valid value def quality=percent @percent = [[percent,0].max,100].min end According to the old behaviour, this quite reasonable piece of code makes (o.quality=x)==o.quality always true, but according to the new behaviour, it's no longer the case. (remark: in #==, left side is evaluated first, so (o.x=a)==o.x compares the return value with new value, but o.x==(o.x=a) compares the return value with the old value) ________________________________________________________________ Mathieu Bouchard http://artengine.ca/matju