Thanks for your bug report. This is intentional and is by design and cannot be changed. It is the same issue as double-evaluation in many other scripting contexts. Scripters need to be aware of situations where this can happen and need to cater for it.