Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!ut-sally!utah-cs!shebs From: shebs@utah-cs.UUCP (Stanley Shebs) Newsgroups: comp.lang.lisp Subject: Re: Multiple Return values in Common Lisp. Message-ID: <4076@utah-cs.UUCP> Date: Fri, 5-Dec-86 10:41:03 EST Article-I.D.: utah-cs.4076 Posted: Fri Dec 5 10:41:03 1986 Date-Received: Fri, 5-Dec-86 20:59:10 EST References: <15257@kestrel.ARPA> Reply-To: shebs@utah-cs.UUCP (Stanley Shebs) Organization: University of Utah CS Dept Lines: 21 For those who need academic approval for features of Common Lisp, I offer Peter Henderson's book "Functional Programming: Application and Implementation", page 269: "For practical purposes, however, ... our purely functional language [is] in fact very rudimentary, and some very simple extensions would greatly enhance its ability to express clearly certain classes of computation. ... That purely syntactic extensions can have great power, in terms of improved clarity of expression, is illustrated by the extension which we now undertake." "We extend our purely functional language to allow functions to return multiple results. ..." He then goes on to describe some constructs which are essentially VALUES and MULTIPLE-VALUE-BIND in CL. CL's multiple values are somewhat more complicated, partly because it needs to work with the rest of the language, and partly because Henderson's version has some undesirable limitations (must always have exact match of multiplicities, for instance). stan