练习2.30-2.32 2.30
(define (subsets s) (if (null? s) (list '()) (let ((rest (subsets (cdr s)))) (append rest (map (lambda (sub) (cons (car s) sub)) rest)))))