Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!whuxl!whuxlm!akgua!gatech!seismo!harvard!think!mit-eddie!barmar From: barmar@mit-eddie.UUCP Newsgroups: net.lang.lisp Subject: Re: question for a Common Lisp guru Message-ID: <1191@mit-eddie.MIT.EDU> Date: Wed, 5-Mar-86 22:29:36 EST Article-I.D.: mit-eddi.1191 Posted: Wed Mar 5 22:29:36 1986 Date-Received: Sun, 9-Mar-86 08:33:29 EST References: <1829@hammer.UUCP> <1142@mit-eddie.UUCP> <1840@hammer.UUCP> Reply-To: barmar@eddie.UUCP (Barry Margolin) Distribution: net Organization: MIT EECS Dept. Lines: 19 In article <1840@hammer.UUCP> patcl@hammer.UUCP (Pat Clancy) writes: >Unfortunately, setf is itself a macro. So what is the final real >form that that defun expands to? I've gotten several mail responses >but none that appear to be correct, and I do not have access to a >CL implementation. It can expand into a call to an implementation-dependent function, as is the case for most setf expansions. For example, on a Symbolics 3600 it might expand into a call to FSET, e.g. (defun foo ...) ==> (setf (symbol-function foo) #'(lambda ...)) ==> (fset 'foo #'(lambda ...)) This is greatly simplified, as there might have to be other forms in the expansion to deal with declarations, documentation, etc. -- Barry Margolin ARPA: barmar@MIT-Multics UUCP: ..!genrad!mit-eddie!barmar