On Wed, Jul 10, 2013 at 7:15 PM, Andrew Fedoniouk <[email protected]
> wrote:
> Consider this simple construct:
>
> module "test" {
> export function setVar() {
> gvar = "GVAR"; // note 'gvar' is not defined in the
> module
> }
> export function getVar() {
> return gvar;
> }
> }
>
> module Test from "test";
> Having this in place I am calling
>
> Test.setVar();
>
> Question: where is that 'gvar' created? Possible case:
>
> a. {{globalns}}.gvar == "GVAR" // so in global namespace or
> b. {{globalns}}.Test.gvar == "GVAR" // in module namepspace
>
> In other words does the module establish its own dynaimic namespace/scope?
>
> If that behavior is spec'ed already I'll appreciate for the link.
>
It gets created nowhere, because the body of a module is implicitly strict,
so the above code produces a Reference Error.
Rick
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss