Subject: Re: R5RS is available
From: (Rob Warnock)
Date: 1998/03/16
Newsgroups: comp.lang.scheme
Message-ID: <6ei3iu$>

Hannu Koivisto  <> wrote:
| Python, in my opinion, has succeeded quite well in this
| respect. Currently I'm pretty much forced to use it because it's
| the only one that provides standard modules, objects, support for
| native threads, a big library that itself uses the module and
| object facilities and this all in both Unix and Win32. For a long
| time I've been looking for a Scheme implementation that could
| compete with Python, but unfortunately I haven't found any.

You mention having done speed tests with MzScheme...  Have you look at
their module system? They call them "units" instead of "modules", so you
may have overlooked it, but it seems to do all the usual things one wants
from a module system. See:

	MzScheme's "units" are used to organize a program into separately
	compilable and reusable components.  A unit resembles a procedure
	in that both are first-class values that are used for abstraction.
	While procedures abstract over values in expressions, units abstract
	over names in collections of definitions.


p.s. Also, for whoever was looking for OO systems in Scheme, MzScheme also
has a fairly straightforward class & object system (though, alas, without
a MOP per se) which can be interfaced with C or C++ foreign functions. See:

This object system and the "units" module system are used heavily in the
implementation of the MrEd editor/GUI-application-builder:

Rob Warnock, 7L-551
Silicon Graphics, Inc.		Phone: 650-933-1673 [New area code!]
2011 N. Shoreline Blvd.		FAX: 650-933-4392
Mountain View, CA  94043	PP-ASEL-IA