<div dir="ltr">Thus far each of the prospective edge cases relevant to the proposal have been technically solved, save for duplicate identifier names and exports from the same file, which appears to be avoidable.<div><br></div><div>Have no "faith" in anything, therefore "good" and "bad" preceding "faith" are as irrelevant as "good" or "bad". </div><div><br></div><div>You can use what is available now and write your own language in your spare time </div>(What programming languages have been created by PPCG users? <a href="https://codegolf.meta.stackexchange.com/q/6918">https://codegolf.meta.stackexchange.com/q/6918</a>) though beware ("<span style="font-family:sans-serif;font-size:14px">Anyone, from the most clueless amateur to the best cryptographer, can create an algorithm that he himself can't break." -</span><span style="font-family:sans-serif;font-size:14px">Schneier, Bruce (</span><span class="gmail-mw-formatted-date" title="1998-10-15" style="font-family:sans-serif;font-size:14px">1998-10-15</span><span style="font-family:sans-serif;font-size:14px">).</span><span style="font-family:sans-serif;font-size:14px"> </span><a rel="nofollow" class="external gmail-text" href="http://www.schneier.com/crypto-gram-9810.html#cipherdesign" style="font-family:sans-serif;font-size:14px;background-color:initial;text-decoration-line:none;color:rgb(102,51,102);padding-right:13px">Memo to the Amateur Cipher Design</a><span style="font-family:sans-serif;font-size:14px">. Cryptogram newsletter. (aka Schneier's Law)</span><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 3, 2019 at 4:12 AM kai zhu <<a href="mailto:kaizhu256@gmail.com">kaizhu256@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">you would need to introduce a new language-syntax that hints delimited module-scope, e.g.<div><br></div><div>```js</div><div>/*</div><div> * es-module.rollup.js</div><div> * </div><div> * example rolling-up es-modules with [hypothetical] pragma</div><div> * "use module_scope xxx";</div><div> * which would be web-compat and minifier-friendly</div><div> */</div><div><br></div><div>"use module_scope ./aa.js";</div><div><font color="#ff0000">// foo is scoped inside module_scope ./aa.js</font></div><div>var foo = ...</div><div>...</div><div><br></div><div>"use module_scope ./bb.js";</div><div><font color="#ff0000">// foo is scoped inside module_scope ./bb.js</font></div><div>var foo = ...</div><div>...</div><div>```</div><div><br></div><div>i'll be honest.  i'm not really proposing this language-syntax in good-faith, as javascript is already chock-full of confusing-features that are distracting/harmful to UX-workflow programming.</div><div><br></div><div>i'm mainly criticizing tc39 for their design-decision pushing through es-modules, and how disruptive it is to operationalize (natively, w/o transpiling) in production-systems.  web-development could've stayed simpler if the committee had done absolutely nothing.  people would've continued using es5-style rollups (w/ yui/amdjs-like module-loaders), and devop-folks wouldn't be forced to deal with import-maps and http2-push to solve a problem that shouldn't have existed.</div><div><br></div></div><div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jun 2, 2019 at 9:25 PM guest271314 <<a href="mailto:guest271314@gmail.com" target="_blank">guest271314@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>> but that requires coordination among modules, which is not always possible.  the idea is to inline/rollup es-modules that may not have come from same developers (and whom are unaware their es-modules collide w/ others when rolled-up).</div><div><br></div>How do you intend to know the names of the identifiers to import without "coordination" and check for duplicate identifier names and duplicate exports? </div>
</blockquote></div></div>
</blockquote></div>