<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jan 24, 2014 at 9:32 AM, David Bruant <span dir="ltr"><<a href="mailto:bruant.d@gmail.com" target="_blank">bruant.d@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Le 24/01/2014 18:26, John Lenz a
      écrit :<br>
    </div><div class="im">
    <blockquote type="cite">
      <div dir="ltr"><br>
        <div class="gmail_extra">
          <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">
                <div class="gmail_extra">
                  <div class="gmail_quote">
                    <div><br>
                    </div>
                    <div>REPL is a dilemma: if you parse as module, then
                      obtaining the last expression value is not simple.
                      if you parse as a script, then common cut/paste
                      fails on export/import statements.</div>
                  </div>
                </div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>My basic question remains.  As a tool owner how do I
              know if what I'm looking at is intended to be a Module or
              a Script?<br>
            </div>
          </div>
        </div>
      </div>
    </blockquote></div>
    How do you know if some code is intended for the browser or Node?<br>
    How do you know some code is intended to be used in a WebWorker and
    not in the main thread?<br></div></blockquote><div><br></div><div>These don't affect how the code is parsed or the behavior of the language itself.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div text="#000000" bgcolor="#FFFFFF">
    How do you know the code won't be concatenated a "use strict" when
    someone else uses it?<br></div></blockquote><div><br></div><div>This is an assembly issue and doesn't void intent.    If it is true you won't be able "import" from a script, it is very reasonable to want to warn about this. </div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">
    <br>
    The code itself lacks the context in which it's being loaded (hence
    very defensive patterns like UMD (Universal Module Definition)).<br>
    If you want to be exhaustive, you'll have to make an assumption or
    make your tool smarter about the context.</div></blockquote><div><br></div><div>I want it to be "smarter" about the context, but smarter means knowing without being told.  Having a different set of reserved words (between "loose" and "strict" mode) means this is a parser issue.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF"><span class="HOEnZb"><font color="#888888"><br>
    <br>
    David<br>
  </font></span></div>

</blockquote></div><br></div></div>