anchor.diff:          ((careq s 'if) (wc-if (cdr s) env))
           ((careq s 'fn) (wc-fn (cadr s) (cddr s) env))
           ((careq s 'assign) (wc-assign (cdr s) env))
  -        ((careq s 'cl) (cadr s))
  +        ((careq s 'cl) (cl-tree (cadr s)))
           ((careq s 'xdef) (apply #'wc-xdef (cdr s)))
           ((consp s) (wc-call (car s) (cdr s) env))
           (t (error "bad object in expression: ~A" s))))
  
positive.code:   (symbol-value (wa-boundp x)))
  
  ; XXX:
  (defun wc-xdef (x &optional (y x) &rest body)
    (if (listp y)
        `(setf ,(wa-name x) (lambda (,@y) ,@body))
        (let* ((pkg (or (car body) 'cl-user))
               (wan (wa-name x))
               (cln (intern (string y) pkg)))
          (handler-case
            (cond ((macro-function  cln) `(setf ,wan (macro-function  ',cln)))
                  ((symbol-function cln) `(setf ,wan (symbol-function ',cln)))
  
negative.code:        (set-macro-character #\, 'read-comma)
         (set-macro-character #\[ 'read-bracket)
         (set-macro-character #\] (get-macro-character #\)))
         (setf (elt sb-impl::*constituent-trait-table* ,(char-code #\:))
               sb-impl::+char-attr-constituent+)
         ;(setf (readtable-case *readtable*) :invert)
         ,@body)
       ;(setf (readtable-case *readtable*) :upcase)
  