<!DOCTYPE html>
<html>
<head>
<title>Script-inserted script</title>
</head>
<body>
<div></div>
<script>
function log(text) {
  var p = document.createElement("p");
  p.appendChild(document.createTextNode(text));
  document.getElementsByTagName("div")[0].appendChild(p);
}

var head = document.getElementsByTagName("head")[0];

var external = document.createElement("script");
external.src = "bug591981-script.js";
head.insertBefore(external, head.firstChild); // what jQuery does

var internal = document.createElement("script");
var data = "log('internal')";
try {
  internal.text = data;
} catch(e) {
  internal.appendChild(document.createTextNode(data));
}
head.insertBefore(internal, head.firstChild); // what jQuery does

</script>
</body>
</html>