Raymond Toy pushed to branch issue-240-add-hashtable-for-destructive-set-ops at cmucl / cmucl

Commits:

1 changed file:

Changes:

  • src/code/list.lisp
    ... ... @@ -852,8 +852,6 @@
    852 852
                        (push item res)))
    
    853 853
     	     res)))))
    
    854 854
     
    
    855
    -(declaim (end-block))
    
    856
    -
    
    857 855
     ;;; Destination and source are setf-able and many-evaluable.  Sets the source
    
    858 856
     ;;; to the cdr, and "conses" the 1st elt of source to destination.
    
    859 857
     ;;;
    
    ... ... @@ -905,11 +903,6 @@
    905 903
                  (process (nth-value 1 (gethash (apply-key key (car list1)) hashtable))))
    
    906 904
                 (t
    
    907 905
                  (process (with-set-keys (member (apply-key key (car list1)) list2)))))
    
    908
    -      #+nil
    
    909
    -      (do () ((endp list1))
    
    910
    -        (if (with-set-keys (member (apply-key key (car list1)) list2))
    
    911
    -	    (steve-splice list1 res)
    
    912
    -	    (setq list1 (Cdr list1))))
    
    913 906
           res)))
    
    914 907
     
    
    915 908
     (defun nset-difference (list1 list2 &key key
    
    ... ... @@ -931,13 +924,10 @@
    931 924
                  (process (nth-value 1 (gethash (apply-key key (car list1)) hashtable))))
    
    932 925
                 (t
    
    933 926
                  (process (with-set-keys (member (apply-key key (car list1)) list2)))))
    
    934
    -      #+nil
    
    935
    -      (do () ((endp list1))
    
    936
    -        (if (not (with-set-keys (member (apply-key key (car list1)) list2)))
    
    937
    -	    (steve-splice list1 res)
    
    938
    -	    (setq list1 (cdr list1))))
    
    939 927
           res)))
    
    940 928
     
    
    929
    +(declaim (end-block))
    
    930
    +
    
    941 931
     (defun set-exclusive-or (list1 list2 &key key
    
    942 932
                              (test #'eql testp) (test-not nil notp))
    
    943 933
       "Return new list of elements appearing exactly once in LIST1 and LIST2."