simple modules
Kris Kowal
kris.kowal at cixar.com
Thu Feb 4 14:16:30 PST 2010
On Thu, Feb 4, 2010 at 2:04 PM, Sam Tobin-Hochstadt <samth at ccs.neu.edu> wrote:
> Module Name Manager/Context/Module Loader: An entity that specifies
> how to find modules, given their names or identifiers. By creating
> these, programmers can manage what modules can be seen by what code.
> I think this (or the next item) is what Kris called a Context in his
> presentation at the face to face meeting.
The module primordials proposal includes a Context constructor that
creates what is presently an ES execution context and contains its
intrinsic primordials. The concept of a Context in that proposal is
completely orthogonal from the entity that manages the process of
grabbing module code (Load/Loader) or linking and instantiating them
(Require, which I've called a Sandbox in the past). It's my
impression that the module statement in your proposal is a Registrar,
or a module transport declaration [1] that enables modules to be
transported in Programs. I do not understand the Linking and
Instantiation semantics of the "Simple Modules" proposal, but it's
possible that the concerns of registration, linkage and instantiation
have been combined and additionally coupled to what I called the
context, in which case it would be appropriate to call the entire
entity a Context. However, I think that for the purpose of this
discussion, it is desirable to separate the layers and concerns so
that we can see the breadth of options.
Kris Kowal
[1] http://wiki.commonjs.org/wiki/Modules/Transport
More information about the es-discuss
mailing list