Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!elroy.jpl.nasa.gov!jato!granite!brian From: brian@granite.jpl.nasa.gov (Brian of ASTD-CP) Newsgroups: comp.lang.scheme Subject: Re: Macros Summary: Have Cake and Eat It Too Keywords: macro, extend-syntax, lexical scope, standards Message-ID: <1991May29.182453.24864@jato.jpl.nasa.gov> Date: 29 May 91 18:24:53 GMT References: <1490@yoakum.cs.utexas.edu> Sender: news@jato.jpl.nasa.gov Reply-To: brian@granite.Jpl.Nasa.Gov (Brian of ASTD-CP) Organization: Jet Propulsion Laboratory, Pasadena, CA Lines: 31 Nntp-Posting-Host: granite.jpl.nasa.gov In article <1490@yoakum.cs.utexas.edu> wilson@cs.utexas.edu (Paul Wilson) writes: >I respectfully differ with the "open letter" about Scheme. In particular, >macros *must* be standardized if Scheme is to survive. Of all the >barriers to using Scheme, this one's probably the easiest to fix. > I think one of the main points of the letter was that Scheme ought to have standardized, but optional bits. Suppose macros were one such "standardized, but optional" facility. Let us add the requirement that "standardized, but optional" facilities should be implementable in portable Scheme. It so happens that facilities like "extend-syntax" and "defmacro" can be so implemented, and there are probably implementations available in the Scheme repository (I'll check nexus.yorku.ca in a bit). So, whatever the standards committee agrees on will end up being easily implementable if not freely available. So, by following the proscriptions of the letter, we get to have our cake and eat it too. Implementors of Scheme can have a small job to do by implementing the "core" essential language. Then users can just download implementations of the standard, but optional bits that the implementor might not have provided. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Brian Beckman . . . . . . . . . . brian@granite.jpl.nasa.gov. . . . . . meta-disclaimer: every statement in this message is false . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .