copy-tree makes a copy of tree structure: it makes copies of pairs and reuses the same values for non-pairs.
; Copy a tree structure
(define (copy-tree tree)
(if (pair? tree)
(cons (copy-tree (car tree))
(copy-tree (cdr tree)))
tree))
subst copies a structure, but with substitution of elements that match old:
(define (subst new old tree)
(if (pair? tree)
(cons (subst new old (car tree))
(subst new old (cdr tree)))
(if (eqv? old tree)
new
tree)))
Contents    Page-10    Prev    Next    Page+10    Index