anchor.diff:                :accessor nil
                 :export nil
                 :documentation "List of funcallables that can be run on suggestions
  -of this source.")
  +of this source.
  +This is the low-level implementation, see the `actions' function for the public
  +interface.")
   
        (persistent-action nil ; TODO: Should be a list so we can support as many persistent actions as we want.
                           :type (or null function)
  
positive.code:      (wrote-to-ready-channel-p nil
                                 :type boolean
                                 :export nil
                                 :documentation "Becomes non-nil when calculation
  is done and the source was sent to the `ready-channel'.")
  
       (wrote-to-ready-channel-lock (bt:make-lock)
                                    :type bt:lock
                                    :export nil
                                    :documentation "Protect
  `wrote-to-ready-channel-p' access.")
  
       (update-thread nil
                      :type t
                      :export nil
                      :documentation "Thread where the `filter-preprocessor', `filter' and
  `filter-postprocessor' are run.  We store it in a slot so that we can terminate it.")
  
  
negative.code:      (initial-suggestions-lock (bt:make-lock)
                                 :type bt:lock
                                 :export nil
                                 :initarg nil
                                 :documentation "Protect `initial-suggestions'
  access.")
  
  