Blob
1 (defun expand-cond-clauses (clauses)2 (if (null clauses)3 'false4 (let ((first (car clauses))5 (rest (cdr clauses)))6 (cond7 ((cond-else-clause? first)8 (if (null rest)9 (sequence->exp (cond-actions first))10 (error "ELSE clause isn't last " clauses)))11 ((extended-cond-syntax? first)12 (make-if13 (extended-cond-test first)14 (list15 (extended-cond-recipient first)16 (extended-cond-test first))17 (expand-cond-clauses rest)))18 (t19 (make-if20 (cond-predicate first)21 (sequence->exp (cond-actions first))22 (expand-cond-clauses rest)))))))