home *** CD-ROM | disk | FTP | other *** search
- (define (merge x y test)
- (define tmp y)
- (if (test (car y) (car x))
- (begin (set! x y) (set! y tmp)))
- (do ((x-ptr x (cdr x-ptr))
- (y-ptr y))
- ((or (null? x-ptr) (null? y-ptr)) x)
- (if (test (car y) (car x))
- (begin (set! tmp (cdr x-ptr))
- (set-cdr! x-ptr y)
- (set! y-ptr tmp)))))
-