Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!uwm.edu!bionet!arisia!roo!janssen From: janssen@parc.xerox.com (Bill Janssen) Newsgroups: comp.lang.scheme Subject: Re: embedded languages Message-ID: Date: 22 Aug 90 02:21:28 GMT References: <9008211819.AA11007@satchmo> Sender: news@parc.xerox.com Organization: Xerox PARC, Palo Alto, CA Lines: 30 In-reply-to: rees@parc.xerox.COM's message of 21 Aug 90 17:25:03 GMT In article <9008211819.AA11007@satchmo> rees@parc.xerox.COM writes: Date: Tue, 21 Aug 1990 02:45:28 PDT From: Kellom{ki Pertti Before resorting to the "Scheme without call/cc is not Scheme" argument (with which I quite agree), remember that an embedded extension language is not used as a general purpose programming language, so the ability to be able to run all the call/cc puzzles is not of prime importance. While I agree with the conclusion, I strongly object to the argument. This claim about how embedded extension languages will be used has been proven wrong over and over again, much to the anguish of users: witness TeX, VMS DCL, Unix shells, C preprocessor. It is simply inevitable that users will want "general purpose" power (abstraction, compilability) in purportedly special purpose languages. Usually what happens to a special purpose language is that user pressures force addition of features that don't fit very well into the original framework, and you end up with a horrible mess: piles of exceptions, multiple mechanisms for doing the same thing, etc. To prevent this, you've got to design a language from the beginning so that even if it doesn't start out being general-purpose, at least it can grow into general-purposeness gracefully. Absolutely correct. -- Bill Janssen janssen@parc.xerox.com (415) 494-4763 Xerox Palo Alto Research Center 3333 Coyote Hill Road, Palo Alto, California 94304