Correct me if I'm wrong David but module import/exports are not dynamic which allows tooling/IDEs to be more intelligent and programmers to easily understand what dependencies a module has/provides?
On Sat, Nov 16, 2013 at 8:30 AM, David Herman <dher...@mozilla.com> wrote: > On Nov 16, 2013, at 3:32 AM, John Barton <johnjbar...@google.com> wrote: > >> Could someone help me understand why two goals for parsing JS is a good >> thing? > > Hm, it sounds like you've assumed a conclusion already. Let me try to explain > anyway. > > Scripts are for synchronous loading and evaluation; modules are for > asynchronous loading and evaluation. The former is not allowed to import, > which triggers I/O. The latter is allowed to import. There was always going > to have to be a syntactic split. > > But there's more. I'll be explaining at this week's TC39 meeting some more > details about the intended model for browser integration. In short, > declarative code based on modules will use the <module> tag (or <script > type="module">, which will mean the same thing and allows polyfilling today). > This is better than <script async>, which was a hopeless idea. This also > works beautifully for fulfilling the promise of 1JS: a new, better initial > environment in which to run top-level application code without requiring > versioning. > > <module> > var x = 12; // local to this module, not exported on global > object > import $ from "jquery"; // asynchronous dependency, NBD > '$' in this // nope, because all globals are scoped to this > module > let y = 13; // yep, let works great because modules are > strict > </module> > > Same number of characters as <script>, better semantics, better global > environment, better language. > > If you're not excited about ES6 yet, get excited. :) > > Dave > > _______________________________________________ > es-discuss mailing list > es-discuss@mozilla.org > https://mail.mozilla.org/listinfo/es-discuss _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss