Are there any proposals regarding built-in module mechanisms or at least
someone to champion it during ECMA meetings? Similar to Joe's point if this
isn't a blocking issue then releasing item after item into the global scope
means they are stuck there forever (unless something like "use stricter";
or whatever other silliness is added to gate the changes). This seems to me
like it shouldn't be that hard to do if someone is championing / proposing.

On Tue, Aug 23, 2016 at 8:26 PM, /#!/JoePea <j...@trusktr.io> wrote:

> True, I understand we can't practically do it at the moment since native
> module systems aren't implemented yet. I guess I am simply expressing that
> it would be awesome and that I can't wait for that to happen sooner than
> later so that new awesome features/tools can be modules instead of globals.
>
> The part that gives me a tiny bit of despair is that if something is
> released as a global, then it will stay that way essentially forever, for
> backwards compatibility. That is the part that makes me feel a tiny bit bad
> inside considering that the amazing language for modules is already defined.
>
> */#!/*JoePea
>
> On Tue, Aug 16, 2016 at 9:49 PM, Jordan Harband <ljh...@gmail.com> wrote:
>
>> We don't yet have a mechanism for built-in modules, and that's not going
>> to be an obstacle for continuing to improve the language.
>>
>> As soon as a viable mechanism and precedent exists for that, new things
>> very well might only be added via that mechanism, rather than solely by
>> adding new global things.
>>
>> On Tue, Aug 16, 2016 at 6:52 PM, /#!/JoePea <j...@trusktr.io> wrote:
>>
>>> Seems like when the ES6 Modules became official that it would be a good
>>> idea to *not* define more globals in the language, and instead spec things
>>> to be modules, f.e. something like:
>>>
>>> ```js
>>> import {apply} from 'Reflect'
>>> // insead of
>>> const {apply} = window.Reflect
>>> ```
>>>
>>> This would also be a pattern for programs that use the JS engine to
>>> follow:
>>>
>>> ```js
>>> import {define} from 'CustomElements' // in browsers
>>> // instead of
>>> const {define} = window.customElements
>>> ```
>>>
>>> Maybe a symbol would be needed for any modules that are native?
>>>
>>> ```js
>>> import {define} from '#CustomElements' // # means native module
>>> ```
>>>
>>> */#!/*JoePea
>>>
>>> _______________________________________________
>>> es-discuss mailing list
>>> es-discuss@mozilla.org
>>> https://mail.mozilla.org/listinfo/es-discuss
>>>
>>>
>>
>
> _______________________________________________
> es-discuss mailing list
> es-discuss@mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to