On May 6, 2009, at 10:56 AM, Michele Simionato wrote:

You say so, but at least the PLT people think in a different way.
I say the meaning of "import" is open to interpretation in the
Scheme world and I do not know of any other implementation
using the meaning in the strict sense of Ikarus.

Here are some definitions from outside of Ikarus and outside of
R6RS.  None of these associate importing with instantiation but
they all associate it with scope.

Aziz,,,

*****************
From the Chicken scheme manual:

[syntax] (import IMPORT ...)
Imports module bindings into the current syntactical
environment. The visibility of any imported bindings is
limited to the current module, if used inside a
module-definition, or to the current compilation unit, if
compiled and used outside of a module.

Importing a module does not load or link it - this is a
separate operation from importing its bindings.


*****************
From Chez scheme user's guide:

An import or import-only form makes the specified bindings
visible.

Identifiers exported from a module are visible within the
module and where the module is imported. An identifier made
visible via an import of a module is scoped as if its
definition appears where the import occurs.


*****************
From Gauche's reference manual:

Special Form: import module-name ...

Makes all exported bindings in the module named module-name
available in the current module. The named modules should
exist when the compiler sees this special form.


*****************
From Bigloo:

The first alternative [...] imports the variable named
bind-name which is defined in the module module-name, [...].
The second does the same but without specifying the name of
the file where the module is located. The third and the fourth
form import all the exported variables of the module
module-name.


Reply via email to