>> If you have an expression in a datawindow that calls a global function that calls a method in a global autoinstantiated object and that method accidently causes an infinite loop calling itself<<
And you should immediately be fired for even contemplating this kind of software architecture...
In fact, I'd call a halt after the first two steps > an expression in a datawindow that calls a global function... There's always a better way.