<div dir="ltr">I agree with Alex.<div><br></div><div>We can tolerate this syntactic form being dropped for now, but that doesn't eliminate the semantic need.  If the "module" contextual keyword is a problem, then we should be able to come up with another color for the bikeshed, e.g.:</div>
<div><br></div><div>    import "foo" as foo;</div><div><br></div><div><br></div><div>As an aside, it is yet to be seen whether the "default" export thing is the best way, or the bad part itself.  We don't have the real world experience yet to answer that.</div>
<div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jun 9, 2014 at 2:39 AM, Axel Rauschmayer <span dir="ltr"><<a href="mailto:axel@rauschma.de" target="_blank">axel@rauschma.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>Context: <a href="https://gist.github.com/caridy/eefb9b104874465d4e1c#1-moduleimport-syntax-importdeclaration" target="_blank">https://gist.github.com/caridy/eefb9b104874465d4e1c#1-moduleimport-syntax-importdeclaration</a></div>
<div><br></div><div>```js</div><div>module foo from "foo"; // drop this<br>import bar from "bar";<br></div><div>```</div><div><br></div><div>I’m seeing the following contra against dropping ModuleImport syntax:</div>
<div><br></div><div>> Contra: without a way to access the module object, it is difficult to deal with 
modules with many exports (e.g.: underscore), but we could fix this by 
using a reflective API to access imported modules</div><div><br></div><div>Isn’t this a frequent use case? Which would lead to ugly and very inconsistent code, especially if multiple imports are involved. I also don’t see how CommonJS-style modules could be neatly migrated to ES6 modules if this feature was dropped.</div>
<div><br></div><div>I do agree that the ModuleImport reads a bit strange, but that could be fixed, e.g. via a suggestion I’ve seen somewhere:</div><div><br></div><div>```js</div><div>import module foo from "foo";</div>
<div>```</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>
<div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word"><div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
<div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">-- <br>Dr. Axel Rauschmayer<br><a href="mailto:axel@rauschma.de" target="_blank">axel@rauschma.de</a><br>
<a href="http://rauschma.de" target="_blank">rauschma.de</a><br></div><br></div></div><br>
</div>
<br></font></span></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></div>