On Wed, Oct 17, 2012 at 5:04 PM, Russell Leggett <span dir="ltr"><<a href="mailto:russell.leggett@gmail.com" target="_blank">russell.leggett@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
    module "a.js" {<br><div class="gmail_quote"><div><div class="im"><div>        import b from "b.js";</div><div>        console.log("a");</div><div>        export let a = "a";</div>
<div>    }</div>
</div><div>    module "b.js" {</div><div class="im"><div>        console.log("b");</div><div>        export let b = "b";</div><div>    }</div><div>    </div><div>    //main.js</div><div>    import a from "a.js";</div>

<div>    console.log("main");</div><div>    </div></div><div>The idea here, is to allow a new bit of syntax where the module identifier is a string literal. If that is the case, it assumes the module is loaded in place of a file, where the url for the file is the value of the string literal. Just to be clear, though, it doesn't actually execute the module at all - it just caches it in the loader.</div>
</div></div></blockquote><div><br></div><div>Ya, I kinda like that.  Basically let's me mark an "internal" module as an "external one" - I even get to assign a "file name", which maybe a debugger can make sense of.  Win!</div>
<div><br></div><div>OTOH, this is yet another feature; the feature set for modules seems pretty rich already - compared to what you have with CommonJS.</div><div><br></div><div>If there's any interest in simplifying ... might be worth noting that, in node, there is no notion of "internal modules".  No one seems to mind.  Maybe just get rid of them?  Only top-level modules, and they're either from a "file" or you've poofed one up using new Module(nameString, codeString).  Concatenators would of course use the Module constructor.  Just like we use eval() today (with //@sourceURL!) in concat'd files to provide per-embedded-file debugging.</div>
<div><br></div><div>-- </div></div><div><div>Patrick Mueller<br><a href="mailto:pmuellr@gmail.com" target="_blank">pmuellr@gmail.com</a><br>
</div></div>