Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!attctc!pollux!ti-csl!m2!gateley From: gateley@m2.csc.ti.com (John Gateley) Newsgroups: comp.lang.scheme Subject: Re: Request for Comments: A new n-ary function construction Message-ID: <99631@ti-csl.csc.ti.com> Date: 27 Nov 89 03:36:38 GMT References: <891122-121343-4098@Xerox> Sender: news@ti-csl.csc.ti.com Reply-To: gateley@m2.UUCP (John Gateley) Organization: TI Computer Science Center, Dallas Lines: 24 In article <891122-121343-4098@Xerox> Pavel.pa@XEROX.COM writes: >[An interesting idea for handling variable numbers of arguments] I like the idea, though it is a large change (if it is implemented efficiently). I do have one point to make against it: the intertia of the list data type. Not only is there apply, but also map(car) and for-each, (and if you like CL, mapcan, mapcon, map-the-world :^). I would like a clean integration with some sort of looping structure, but this might mean (re)designing a MIT style LOOP macro. Any ideas? >[Note: I'll point out right here that nobody I've shown this to has liked >having strings in the lambda-list. It just seemed better to me than >&arbitrary or #!arbitrary. Suggestions are solicited.] After some thought, strings don't sound so bad to me. Consider: identifiers are really objects which we know at compile time to be symbols. (Is this true in Scheme? Do there exist identifiers which have no symbol or vice versa? I've been using CL too long). Along the same lines, we could have C-Strings (compile-time strings) which appear in lambda lists. The only significance to the name "C-string" is that identifiers and symbols have different names. John gateley@m2.csc.ti.com