anchor.diff:  (defun is-array (object)
     "Determine if the given object is an array term/type."
     (or (is-term (list +term-term-type-make-array+
  +                     +term-term-type-index-list+
                        +term-term-type-append+
  +                     +term-term-type-prepend+
  +                     +term-term-type-difference+
  +                     +term-term-type-set-insert+
  +                     +term-term-type-set-intersection+
  +                     +term-term-type-set-union+
  +                     +term-term-type-set-difference+
  +                     +term-term-type-insert-at+
  +                     +term-term-type-splice-at+
  +                     +term-term-type-delete-at+
  +                     +term-term-type-change-at+
  +                     +term-term-type-keys+
                        +term-term-type-db-list+
                        +term-term-type-table-list+
                        +term-term-type-var+
  
positive.code:                      +term-term-type-table-drop+
                       +term-term-type-foreach+
                       +term-term-type-funcall+
                       +term-term-type-branch+)
                 object)))
  
  (defun is-string (object)
  
negative.code:   (or (is-string object)
        (is-number object)
        (is-object object)
        (is-boolean object)
        (is-term (list +term-term-type-default+
                       +term-term-type-match+)
                 object)))
  
  (deftype pkey () '(or real string))
  
  