Jason, have you ever trief something like this?
person.watch = { cond, action, elseAction ->
def value = person.with(cond).clone()
@groovy.transform.Field lastValue
if (value != lastValue) action(lastValue, value) else elseAction()
lastValue = value
}
bye Jochen
