diff options
author | Kevin Ryde <user42@zip.com.au> | 2003-07-08 00:10:42 +0000 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2003-07-08 00:10:42 +0000 |
commit | 9388c70ac02776192f01f7436ec7eed9d510c1e5 (patch) | |
tree | c8aada809c86c9ad8242fc8b754cc9b59c6257fd /srfi/srfi-1.scm | |
parent | f27e84434a8b5f81ce183622fff64470033f5824 (diff) | |
download | guile-9388c70ac02776192f01f7436ec7eed9d510c1e5.tar.gz |
(delete, delete!, delete-duplicates, delete-duplicates!): Remove.
Diffstat (limited to 'srfi/srfi-1.scm')
-rw-r--r-- | srfi/srfi-1.scm | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/srfi/srfi-1.scm b/srfi/srfi-1.scm index f65c4c773..12d2d18b4 100644 --- a/srfi/srfi-1.scm +++ b/srfi/srfi-1.scm @@ -795,46 +795,6 @@ (else (lp (map1 cdr lists) (+ i 1))))))) -;;; Deletion - -(define (delete x list . rest) - (let ((l= (if (pair? rest) (car rest) equal?))) - (let lp ((l list)) - (if (null? l) - '() - (if (l= x (car l)) - (lp (cdr l)) - (cons (car l) (lp (cdr l)))))))) - -(define (delete! x list . rest) - (let ((l= (if (pair? rest) (car rest) equal?))) - (delete x list l=))) ; XXX:optimize - -(define (delete-duplicates list . rest) - (let ((l= (if (pair? rest) (car rest) equal?))) - (let lp0 ((l1 list)) - (if (null? l1) - '() - (if (let lp1 ((l2 (cdr l1))) - (if (null? l2) - #f - (if (l= (car l1) (car l2)) - #t - (lp1 (cdr l2))))) - (lp0 (cdr l1)) - (cons (car l1) (lp0 (cdr l1)))))))) - -(define (delete-duplicates list . rest) - (let ((l= (if (pair? rest) (car rest) equal?))) - (let lp ((list list)) - (if (null? list) - '() - (cons (car list) (lp (delete (car list) (cdr list) l=))))))) - -(define (delete-duplicates! list . rest) - (let ((l= (if (pair? rest) (car rest) equal?))) - (delete-duplicates list l=))) ; XXX:optimize - ;;; Association lists (define (alist-cons key datum alist) |