anchor.diff:  ;;; Each individual prune describes how a copy of one writer kernel can be
   ;;; incorporated into one reader kernel.
   (defstruct prune
  -  ;; The number of elements that would be removed by applying that prune.
  -  (size nil :type unsigned-byte :read-only t)
  +  ;; The number of bits of memory that are freed by applying this prune.
  +  (bits nil :type unsigned-byte :read-only t)
     ;; An alist where each key is a kernel, and where each value is a list of
     ;; entries of the form (dendrite writer store-instruction).
     (buffers '() :type list :read-only t))
  
positive.code:    #'maybe-prune
     (sort (loop for buffer in potentially-superfluous-buffers
                 when (find-prune buffer) collect it)
           #'> :key #'prune-size)))
  
  (defvar *prune*)
  
  
negative.code:           ;; writer for this particular dendrite.  Give up.
            (return-from find-prune nil))))
      (make-prune
       :bits bits
       :buffers
       ;; Mark each buffer that is part of a prune as superfluous.
       (mapcar #'car buffer-dendrites-alist))))
  