Make set/adjoin not cons so much.
authorJoe Marshall <edu/mit/csail/zurich/jrm>
Tue, 22 Mar 1988 18:10:01 +0000 (18:10 +0000)
committerJoe Marshall <edu/mit/csail/zurich/jrm>
Tue, 22 Mar 1988 18:10:01 +0000 (18:10 +0000)
v7/src/sf/lsets.scm

index 7846189b9413b58513ac447345d0a19bb41facde..e38c1789ee88c0796f19b4c1ac8b0adaed68e42a 100644 (file)
@@ -264,7 +264,9 @@ to figure out what is going on in this code.
 (define (adjoin-element predicate element list)
   (declare (integrate  list))
   predicate ; is ignored
-  (cons element (delq element list)))
+  (if (memq element list)
+      list
+      (cons element list)))
 
 (define (set/adjoin set element)
   (spread-set set