Blob


1 (defun square-tree-direct (tree)
2 (cond ((null tree) nil)
3 ((not (consp tree)) (square tree))
4 (t (cons (square-tree-direct (car tree))
5 (square-tree-direct (cdr tree))))))
7 (defun square-tree-map (tree)
8 (mapcar
9 (lambda (subtree)
10 (if (consp subtree)
11 (square-tre-map subtree)
12 (square subtree)))
13 tree))
15 (defun tree-map (func tree)
16 (mapcar
17 (lambda (subtree)
18 (if (consp subtree)
19 (tree-map func subtree)
20 (funcall func subtree)))
21 tree))