<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/6/2 David Bruant <span dir="ltr"><<a href="mailto:bruant.d@gmail.com" target="_blank">bruant.d@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Le 01/06/2013 16:52, Jorge a écrit :<div class="im"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 02/06/2013, at 01:22, Brandon Benvie wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 6/1/2013 3:44 PM, Jorge wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
But they're not fully interchangeable, for example I can exit a function at any point with a return, but can I exit a block at any point with a break or something?<br>
</blockquote>
    block: {<br>
      if (true) {<br>
        break block;<br>
      }<br>
    }<br>
</blockquote>
What might happen with this is that if you concatenate a bunch of .js files that use this pattern, they might end redefining the same label (which would be an error, I guess). Wrapping it all in another block would solve that?<br>

<br>
{<br>
   block: {<br>
     if (true) {<br>
       break block;<br>
     }<br>
   }<br>
}<br>
<br>
But then... I'm not sure this is any better than an IIFE!<br>
</blockquote></div>
You can also use a less naive concatenator. Labels seem to be very static parts of a JS program. It sounds doable to find and rewrite them.<br>
<br>
Given what people have been doing with esprima recently [1], I have the impression it would be even easy (?)<br>
 </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">David<br>
<br>
[1] <a href="https://github.com/olov/defs" target="_blank">https://github.com/olov/defs</a><div class="HOEnZb"><div class="h5"><br>
</div></div></blockquote><div><br><br></div><div>Ouch?<br><br></div><div>It seems like a sorry path to take that makes one have to comfess "Yes. In this language we have made some improvements that make it unsafe to concatenate program files like before - without using a parser/rewriter". Or is there another way?<br>
<br>Otherwise it seems tom me like IIFEs still would do the best job defining "modules" (in the sense "parts of a program") in the outermost scope.<br><br></div><div>// P<br></div><div> <br></div><div>
<br><br><br><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">______________________________<u></u>_________________<br>

es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/<u></u>listinfo/es-discuss</a><br>
</div></div></blockquote></div><br></div></div>