anchor.diff:      table))
   
   
  +(defun hash-table-to-sexp (table)
  +  "Returns a sexp containing the hash-table data."
  +  (list 'hash-table
  +        :test (hash-table-test table)
  +        :size (hash-table-count table)
  +        :rehash-size (hash-table-rehash-size table)
  +        :rehash-threashold (hash-table-rehash-threshold table)
  +        :elements (let ((entries '()))
  +                    (maphash (lambda (k v) (push (cons k v) entries)) table)
  +                    entries)))
  +
  +(defun sexp-to-hash-table (sexp)
  +  "Create a new hash-table containing the data described in the sexp
  +\(produced by HASH-TABLE-TO-SEXP."
  +  (check-type sexp list)
  +  (assert (eq 'hash-table (first sexp)))
  +  (let* ((plist (rest sexp))
  +         (test (getf plist :test 'eql))
  +         (size (getf plist :size 8))
  +         (rehash-size (getf plist :rehash-size 1.5))
  +         (rehash-threshold (getf plist :rehash-threshold 0.85))
  +         (elements (getf plist :elements))
  +         (table (make-hash-table :test test
  +                                 :size size
  +                                 :rehash-size rehash-size
  +                                 :rehash-threshold rehash-threshold)))
  +    (loop :for (k . v) :in elements
  +          :do (setf (gethash k table) v))
  +    table))
  +
   (defun print-hashtable (table &optional (stream *standard-output*))
     "Prints readably the hash-table, using #. and the HASHTABLE function."
     (format stream "#.(HASHTABLE :TEST (FUNCTION ~S)  :SIZE ~D ~%~
  
positive.code: 
      AGPL3
      
      Copyright Pascal J. Bourguignon 2003 - 2012
      
      This program is free software: you can redistribute it and/or modify
      it under the terms of the GNU Affero General Public License as published by
  
negative.code:    "HASH-TABLE-ENTRIES" "HASH-TABLE-PATH"
     "COPY-HASH-TABLE" "MAP-INTO-HASH-TABLE"
     "HASHTABLE" "PRINT-HASHTABLE"
     "HASH-TABLE-TO-SEXP"
     "SEXP-TO-HASH-TABLE"
     ;;
     "DICHOTOMY"
     "TRACING" "TRACING-LET" "TRACING-LET*" "TRACING-LABELS"
     ;;
     "XOR" "EQUIV" "IMPLY"
     ;; "SET-EQUAL"
     )
    (:documentation
     "
  