import.meta and TC39 process as a whole

Dmitrii Dimandt dmitrii at dmitriid.com
Sat Aug 5 16:08:35 UTC 2017


That’s not what I was really aiming at :)

The original concern was “to get ‘module’ : 1. It's a context-sensitive keyword, and code that's using it needs to 

be updated when migrated to a module. “

I was just pointing out that ‘import’ is already a context-sensitive keyword (as are a bunch of others, like super. Is super a keyword BTW?)

On Sat, 05 Aug 2017 at 18:03 Matthew Robb

<
mailto:Matthew Robb <matthewwrobb at gmail.com>
> wrote:

a, pre, code, a:link, body { word-wrap: break-word !important; }

Ah but you can do:

export function meta(key) {

return import.meta[key]:

}

On Aug 5, 2017 11:59 AM, "Dmitrii Dimandt" <
mailto:dmitrii at dmitriid.com
> wrote:

Import is already made to be a context-sensitive keyword

I don’t think you can have a

function x() {

   import {x} from ‘module’;

}

On Sat, 05 Aug 2017 at 13:07 "T.J. Crowder"

<

">"T.J. Crowder"

> wrote:

On Sat, Aug 5, 2017 at 11:58 AM, Naveen Chawla

<
mailto:naveen.chwl at gmail.com
> wrote:

>

> How is `document` and `window` handled when someone does

> `const document =` ?

At global scope in a script body, in a browser context, it's an error,

as you presumably know, because `document` is already declared.

> It would seem perfectly fine to allow `module` to be masked by

> other variables, and if someone wants to use the module-global

> `module`, they can just rename in order to get access.

Yes. That's what I said.

The issue with it being an identifier isn't shadowing. It's that then

it's a binding with a value, and that value can be passed around,

which I suspect isn't okay.

For clarity: To get `module`, either:

1. It's a context-sensitive keyword, and code that's using it needs to

be updated when migrated to a module.

2. It's an identifier, which means its value can be passed around.

All I've said, again, is: I *suspect* that having it be an identifier

is a non-starter. But perhaps you can get support for a

context-sensitive keyword, if people feel it's worth the complexity

for mildly-improved semantics.

-- T.J. Crowder

______________________________

_________________

es-discuss mailing list
mailto:es-discuss at mozilla.org https://mail.mozilla.org/listinfo/es-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20170805/f66a08e8/attachment.html>


More information about the es-discuss mailing list