Why function statement requires a name?
<p>Why I can write</p>

<pre><code> var foo = function(){}();
</code></pre>

<p>But can not </p>

<pre><code> function(){}();
</code></pre>

<p>Are there are any design reasons?</p>
