detecting JS language mode for tools

John Barton johnjbarton at
Fri Jan 24 09:16:29 PST 2014

On Fri, Jan 24, 2014 at 8:49 AM, Tab Atkins Jr. <jackalmage at>wrote:

> On Fri, Jan 24, 2014 at 8:48 AM, John Lenz <concavelenz at> wrote:
> > For static language parsers there seems to be a bit of a dilemma with ES6
> > modules.  I would appreciate a correct or hint.
> >
> > Here is my understanding:
> >
> >   - standard scripts as we know them today will parse in the browser as
> > "loose" code
> >   - scripts with the standard "use strict" will parse as "strict" with
> > access to all ES6 goodness
> Loose code will also get all the ES6 goodness.  1JS and all that.

You can't use import or export (or module?) keywords in script. There are
two parsing goals, one for script and one for module.  So more like 2JS ;-)

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.

> ~TJ
> _______________________________________________
> es-discuss mailing list
> es-discuss at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list