JavaScript is one of those technologies that you can use for years knowing only very little about it.  Do you know what the following <script> block will do?  Post your guess as a comment before you test it out!

<script>

(function()
{
  function A() { document.write(A) }

  A();
})()

</script>