(define (deep-reverse l) (if (null? l) l (if (list? (car l)) (append (deep-reverse (cdr l)) (list (deep-reverse (car l)))) (append (deep-reverse (cdr l)) (list (car l)))))) (define (count-all l) (cond ((null? l) 0) ((not (list? (car l))) (cond ((eqv? (car l) '()) (count-all (cdr l))) (else (+ 1 (count-all (cdr l)))))) (else (+ (count-all (car l)) (count-all (cdr l)))))) (define (add a . b) (add-helper (cons a b))) (define (add-helper l) (if (null? l) 0 (+ (car l) (add-helper (cdr l)))))