Because often a script has not way of knowing the legs were pulled out from under it and you don't want to always run your own timing routines or you'll be chasing your own tail.

Same thing happens on Java scripts that time out on a server that has nothing to do with UBB