<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Didn’t know about the service. It looks really promising. Thank you for letting me know.<div class=""><br class=""></div><div class="">So you are saying polyfills should really be included as scripts and not modules? That makes sense.</div><div class=""><br class=""></div><div><blockquote type="cite" class=""><div class="">On Mar 16, 2015, at 11:11 AM, caridy <<a href="mailto:caridy@gmail.com" class="">caridy@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">correct, it is about evaluation.<div class=""><br class=""></div><div class="">yes, modules will have access to window, and any other runtime feature.</div><div class=""><br class=""></div><div class="">no, I don't recommend using modules to patch the runtime, features should probably be patched before attempting to load any module (maybe using FT polyfill service).</div><div class=""><br class=""></div><div class="">/caridy<br class=""><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Mar 15, 2015, at 10:57 PM, Glen Huang <<a href="mailto:curvedmark@gmail.com" class="">curvedmark@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">My guess is that it’s for importing modules that expose objects via the global object (e.g., window).<div class=""><br class=""></div><div class="">However I do have a question: is it possible for a module to access the global object without relying on the host environment?</div><div class=""><br class=""></div><div class="">One use case is to polyfill the language's standard library. es6-shim uses a pretty ugly hack (<a href="https://github.com/paulmillr/es6-shim/blob/e17ca7ad73528261a3fc4af2ad71ebc3c8f84c0e/es6-shim.js#L76" class="">https://github.com/paulmillr/es6-shim/blob/e17ca7ad73528261a3fc4af2ad71ebc3c8f84c0e/es6-shim.js#L76</a>).</div><div class=""><br class=""></div><div class="">I wonder what’s the most elegant way to do that?</div><div class=""><br class=""></div><div class=""><blockquote type="cite" class=""><div class="">On Mar 16, 2015, at 3:59 AM, Kyle Simpson <<a href="mailto:getify@gmail.com" class="">getify@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">Thanks, all answers super helpful!<br class=""><br class="">One last clarification:<br class=""><br class="">```js<br class="">import "foo";<br class="">```<br class=""><br class="">This doesn't do any binding does it? AFAICT, it just downloads and runs the module (if it hasn't already)?<br class=""><br class="">If that's true, what's the use-case here besides "preloading" a module performance wise?<br class="">_______________________________________________<br class="">es-discuss mailing list<br class=""><a href="mailto:es-discuss@mozilla.org" class="">es-discuss@mozilla.org</a><br class=""><a href="https://mail.mozilla.org/listinfo/es-discuss" class="">https://mail.mozilla.org/listinfo/es-discuss</a><br class=""></div></blockquote></div><br class=""></div>_______________________________________________<br class="">es-discuss mailing list<br class=""><a href="mailto:es-discuss@mozilla.org" class="">es-discuss@mozilla.org</a><br class=""><a href="https://mail.mozilla.org/listinfo/es-discuss" class="">https://mail.mozilla.org/listinfo/es-discuss</a><br class=""></div></blockquote></div><br class=""></div></div></div></div></blockquote></div><br class=""></body></html>