[iterate-devel] clisp setf wark around

Marco Baringer mb at bese.it
Mon Jan 24 17:09:35 UTC 2005


"Hoehle, Joerg-Cyril" <Joerg-Cyril.Hoehle at t-systems.com> writes:

> Thanks for the bug report.
>
> Marco wrote:
>>bese-2004 at common-lisp.net/iterate--clisp-setf--1.0--patch-1
>
> Great, but do you have an idea how I can look at that 5-liner?  My
> connection to the internet is via a firewall, so I can't use
> specific protocols (like CVS, unless tunelled by ssh), nor does
> GNUArch (not installed) help me.

--- orig/iterate.lisp
+++ mod/iterate.lisp
@@ -646,6 +646,13 @@
 	(values (list (cons bod abod)) (nconc decs adecs) (nconc init ainit)
 		(nconc step astep) (nconc final afinal) 
 		(nconc final-prot afinal-prot)))))
+
+   #+clisp
+   ((and (eql 'setf (first (car form)))
+	 (get (second (car form)) 'system::setf-function)) 
+    (walk `(funcall ',(get (second (car form)) 'system::setf-function)
+		    ,@(cdr form))))
+   
    (t
     (clause-error "The form ~a is not a valid Lisp expression" form))))
 


-- 
-Marco
Ring the bells that still can ring.
Forget the perfect offering.
There is a crack in everything.
That's how the light gets in.
	-Leonard Cohen



More information about the iterate-devel mailing list