anchor.diff:  
   (defun skip-spaces (buffer)
     "Skips spaces, tabs and newlines until a non-space character has been found"
  -  (loop while (find (current-char buffer) +space-characters+)
  +  (loop while (find (current-char buffer) +space-characters+ :test #'char=)
        do (next-char buffer)))
   
   ;; (defmacro skip-spaces (buffer)
  
positive.code:   "Sets the mark of the buffer to the current character"
    (setf (buffer-mark buffer) (buffer-index buffer)))
  
  (defconstant +space-characters+ '(#\Space #\Newline #\Tab #\Linefeed)
    "List of characters which may denote a space in the JSON format (these have not been verified")
  
  (defun skip-to (buffer last-char)
    "Skips characters until <char> has been found.  <char> is the last char which is skipped"
    (declare (type buffer buffer)
  
negative.code:   (read-from-string (subseq-until buffer #\] #\} #\,))) ;; only these characters are allowed to actually end a number
  
  (defun read-json (string)
    (let ((buffer (build-buffer string)))
      (skip-to buffer #\{)
      (read-object buffer)))
  