Resposta ao exercício 68

A sintaxe da macro é:

(quando teste
  expr-1 expr-2 ...expr-n)

A expansão desejada é:

(cond (teste
       expr-1 expr-2 ...expr-n)
      (t nil))

A macro será:

(defmacro quando (teste &rest exprs)
  (list 'cond
        (cons teste exprs)
        '(t nil)))

Esta macro já existe em Lisp e denomina-se when.