Subject: Re: named return values From: Erik Naggum <firstname.lastname@example.org> Date: Sat, 04 May 2002 17:52:53 GMT Newsgroups: comp.lang.lisp Message-ID: <email@example.com> * Kalle Olavi Niemitalo | I think I would prefer crossing these features with keyword arguments, so | that new return values could be added to functions without affecting | existing callers. A function call would specify which values it wants. | Functions would normally provide all available values and Lisp would | discard the unused ones, but there would also be a way for functions to | check which values are needed and compute only those. Please note that Common Lisp is _much_ more descriptive than one might think from a C-like point of view. If you ask for the nth value, that could conceivably be communicated in the call because the call contains enough context to know, and so too if non-primary values are ignored, or even all values, it may cause a different call. If Common Lisp were compiled to a fairly standard CLVM and that again was compiled as more knowledge of the actual function calling pattern emerged, as in Sun's HotSpot for Java we could see that kind of stuff dynamically evolve and not be prepared for by the compiler into static machine code. -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief. 70 percent of American adults do not understand the scientific process.