I am sure I don\'t fully understand this problem, but it seems that we are seeing strange behavior on IE9 on my project, somehow related to out-of-order execution o
So the advantage of writing script tags this way is that they are loaded asynchronously. I don't know about browser nuances about exactly how this is done but I would have thought they would be executed when they're downloaded, in no specific order. Similar to the behaviour of the HTML5 async attribute.
There's another HTML5 attribute defer which instead makes scripts execute in order, but in a non blocking way. You could try adding that into your generated tags. IE9 partially honours it.