[r6rs-discuss] comment and vote (if allowed)

Thomas Lord lord at emf.net
Tue Aug 21 12:41:57 EDT 2007

Elf wrote:
> merely allowing 'traditional'macros (define-macro) as well as hygenic (define-syntax) should be equivalent
> but clearer.

I'm not sure what *exactly* you mean by "equivalent" but I'm
sure you're not exactly right.   With only traditional macros you'll
find yourself in "gensym hell," which isn't *that* bad a place to
visit but I wouldn't want to live there.

Traditional macros plus something like first class environments
and/or locatives get you where you want to go.   

It's weird because these features would make Scheme a very dynamic
language.  It would feel like a great "old school" lisp interpreter.
If languages like Ruby, Lua, Perl, and Python are any indication,
a lot of users would find this a very natural way to program.

And yet, then Scheme would inherent something *similar* to
the compilation problems of all those other languages.   Scheme
would have the extreme advantage of a large subset that an
optimizing compiler can go to town with but there would (will?)
be a huge amount of work to create implementations that
provide a smooth, easy to use blend of compilation and
efficient interpretation.    (I tried to help aim Guile in this
direction but it didn't take, not quite at least.)

Those of us who aren't entirely excited about 5.97 have solid
criticisms all around, in my view, but we now "owe the
community" (so to speak) some work to back up our criticisms
with a  pragmatic alternative.


More information about the r6rs-discuss mailing list