P27

(load "p26.l")

(de subsets (Set Lst)
   (if (cdr Lst)
      (mapcan
         '((C)
            (mapcar
               '((S) (cons C S))
               (subsets (diff Set C) (cdr Lst)) ) )
         (combination (car Lst) Set) )
      (cons (cons Set)) ) )

http://picolisp.com/wiki/?99p27

10jul10    abu