Hi Joss,
:) Actually the method is not called again if a value is changed from the method itself. Though debugging can really be painful.
>You want confusing, try this: THIS.Value=THIS.Value. If you saw this line of code you would think it did nothing, but if THIS.Value has an assign method, this code could result in just about anything.