anchor.diff:  (defun convert-from-foreign-usb8 (s len)
     (let ((a (make-array len :element-type '(unsigned-byte 8))))
       (dotimes (i len a)
  -      (setf (aref a i) (cffi:mem-ref s :unsigned-char i)))))+      (setf (aref a i) (cffi:mem-ref s :unsigned-char i)))))
  
positive.code:    #:convert-to-foreign-string
     #:allocate-foreign-string
     #:with-foreign-string
     #:foreign-string-length              ; not implemented
     
     ;; function call
  
negative.code:            (cffi:with-foreign-string (,foreign-string ,str)
               ,@body)))))
  
  (defmacro with-foreign-strings (bindings &body body)
    `(with-foreign-string ,(car bindings)
      ,@(if (cdr bindings)
            `((with-foreign-strings ,(cdr bindings) ,@body))
            body)))
  
  ;; This function returns a form? Where is this used in user-code?
  (defun foreign-string-length (foreign-string)
    (declare (ignore foreign-string))
  