[R6RS] libraries

Michael Sperber sperber at informatik.uni-tuebingen.de
Sat Aug 19 05:06:45 EDT 2006


Matthew Flatt <mflatt at cs.utah.edu> writes:

> In PLT Scheme, we spend lots of time implementing macro-based language
> variants (e.g., HtDP Beginner Scheme) and constructs (e.g., classes and
> mixins and traits). So, extra time spent on the compiler does not seem
> like time lost to other optimizations, but time saved from fighting
> macro-staging problems.

For the record, I agree with Matthew.  To me, it also seems kind of
strange to discard arguments against various other aspects of the
language (such as call/cc and dynamic-wind, or, more recently,
multiple values) solely because they cause work for the implementors.
I admit there may be a difference in scale, but the fundamental point
stands.

Specifically, just that it's difficult for library implementations
that work through expanding away the libraries to perform certain
kinds of optimizations, isn't a very strong argument with me.  I don't
see how implementations of other languages have a place in the
discussion, as they either don't have to deal with macros or also
suffer from staging problems.  I agree with Matthew that the nature of
libraries and macro expansion in Scheme favors an implementation of
libraries as primitive entities, and I also believe that's the way it
should be.

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla



More information about the R6RS mailing list