Just to be sure... Does a get printed only the first time the module A is imported somewhere, or every time?<br><br><div class="gmail_quote">On Tue, Oct 16, 2012 at 3:57 PM, Patrick Mueller <span dir="ltr"><<a href="mailto:pmuellr@yahoo.com" target="_blank">pmuellr@yahoo.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Mon, Oct 15, 2012 at 9:45 AM, Kevin Smith <span dir="ltr"><<a href="mailto:khs4473@gmail.com" target="_blank">khs4473@gmail.com</a>></span> wrote:<br>
</div><div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
OK, so:<br><div class="gmail_quote"><div><br></div><div>    module A { console.log("a"); export var x; }</div><div>    console.log("$");</div>
<div>    import x from A;</div><div><br></div><div>Does this print:</div><div>    $</div><div>    a</div><div>or </div><div>    a</div><div>    $</div></div></blockquote><div><br></div></div><div>The first - "$", then "a".</div>

<div> </div></div>At least, that's how most module systems I've played with seem to work -
 CommonJS-ish ones I've written and used, and mostly AMD; there was an 
issue with the AMD almond loader that it would execute a "module 
factory" when the module was define()'d, not when it was first 
require()'d.  Can't remember the final stand on that one.  I think most 
of the AMD loaders will ensure that factories are not run until needed.<br>
<br>
This has worked out quite well, as it means ordering of modules doesn't 
matter - Browserify is a good example of this.  It means you don't HAVE 
to arrange your modules in any particular order, just make sure they are
 all defined before you do your first require().  MUCH, MUCH easier to build concatenators if you don't care what the order is.<span class="HOEnZb"><font color="#888888"><br><div><br></div>-- <br>Patrick Mueller<br><a href="mailto:pmuellr@gmail.com" target="_blank">pmuellr@gmail.com</a><br>


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