On Thu, Feb 7, 2013 at 9:25 PM, Kevin Smith <span dir="ltr"><<a href="mailto:khs4473@gmail.com" target="_blank">khs4473@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">
<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

Thanks, but let's not jump to any conclusions. I'm the champion of modules and wasn't even able to be a part of the discussion for family reasons. We can't make any judgment about the status of modules, or plans for reacting to the status of modules, before I've had a chance to be a part of the conversation.<br>


<br></blockquote><div><br></div></div><div> +1 and congrats (I'm slinging a babe right now ; )</div><div><br></div><div>I'm confident that modules will make it - in my mind ES6 will fail if not.  They are certainly more important than proxies and private names, and the sooner we coalesce around the syntax, the better everyone will feel.  IMO, your previous proposal was almost right on.  e.g.</div>

<div><br></div><div><a href="http://wiki.ecmascript.org/doku.php?id=harmony:modules&rev=1332511079" target="_blank">http://wiki.ecmascript.org/doku.php?id=harmony:modules&rev=1332511079</a><br></div><div><a href="https://gist.github.com/khs4473/4382710" target="_blank">https://gist.github.com/khs4473/4382710</a><br>

</div><div><br></div><div>I think we need to have a knock-down-drag-out discussion about URL and loader semantics.  ; )</div></div></div></div></blockquote><div><br></div><div>In the home brewed module system that I've been using for the past 4 years or so, I started by basically stealing from Java - in a comment at the top of a file I do sort of java style imports:<br>
<br>    </div><div>/*</div><div> * #import com.foo.bar.SomeClass</div><div> */</div><div><br></div><div>It had the usual sort of Java style semantics (we're a Java shop, so this works for us). Along the way, I added support for importing java classes - this would basically do some java -> javascript model building magic and exposing services, etc. The notation for it looks mostly the same except for:</div>
<div><br></div><div>/*</div><div> * #import remote com.foo.bar.JavaClass</div><div> */</div><div><br></div><div>The sort of import modifier "remote" in there is the difference. Its just a bit of meta-data, but it helped with resolution of the dependency. Along the way, I've also added "lazy" as a modifier, which helps know how to break apart the application when I do concatenation during the build.</div>
<div><br></div><div>I'm not suggesting this syntax or semantics, but it occurred to me that perhaps if we could work some metadata into an import statement it could be a way of giving additional information to the loader. Perhaps it could be used for url resolution. For example, the "cdn" flag would let the loader know to resolve the url to a cdn, etc.</div>
<div><br></div><div>- Russ</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="HOEnZb"><font color="#888888"><div>
<br></div><div>{ Kevin }</div></font></span></div></div></div>
<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>