Endy,
Я вот реально не понимаю, какой смысл в привязывании функций к именам функций (типо -- классам). Если бы вот так было
<html>
<head>
</head>
<body>
<p>foo</p>
<p>foo</p>
<p>foo</p>
<p>foo</p>
<script>
collection=document.getElementsByTagName("p")
HTMLCollection.prototype.toArray=function(){return [].map.call(this, function(x){return x})}
alert(collection.toArray().map(function(x){return x.innerHTML}))
</script>
</body>
</html>
, это еще имело бы какой-никакой смысл.
Эти идиоты вообще уже там охренели. Я уже не говорю, что сахар на кажды пук вообще не нужен.