Subject: Re: setf implementation
From: rpw3@rigden.engr.sgi.com (Rob Warnock)
Date: 2000/01/25
Newsgroups: comp.lang.lisp
Message-ID: <86k4d8$trvo2@fido.engr.sgi.com>
Erann Gat <gat@jpl.nasa.gov> wrote:
+---------------
| Then setf simply becomes something like:
| 
| (setf (fn . args) . more-args) --> (apply (setter fn) (append args more-args))+---------------

Minor quibble: There's a very good reason why you *really* want it to be
[as it sort of already is in CL]:

  (setf (fn . args) new-value) --> (apply (setter fn) (cons new-value args))

namely, consider that "fn" might have &OPTIONAL, &KEY, or even &REST args
[assuming, of course, that if "fn" does then "(setter fn)" must, too].


-Rob

-----
Rob Warnock, 8L-846		rpw3@sgi.com
Applied Networking		http://reality.sgi.com/rpw3/
Silicon Graphics, Inc.		Phone: 650-933-1673
1600 Amphitheatre Pkwy.		FAX: 650-933-0511
Mountain View, CA  94043	PP-ASEL-IA