anchor.diff:    "Takes a key or a list of keys are returns a list of MEMCACHE-RESPONSE structures"
     (let* ((keys (if (listp key-or-list-of-keys) key-or-list-of-keys (list key-or-list-of-keys)))
   	 (result (loop for x in (mc-get keys :memcache memcache :mc-use-pool mc-use-pool)
  +		    when x
   		    collect (make-memcache-response% (first x) (second x) (third x) (fourth x) (fifth x)))))
       (if (= (length result) 1)
   	(first result)
   	result)))
   
   
  -(defmacro mc-get-value (key &key (memcache *memcache*) (mc-use-pool *mc-use-pool*) (external-format *mc-default-encoding*))
  +(defun mc-get-value (key &key (memcache *memcache*) (mc-use-pool *mc-use-pool*) (external-format *mc-default-encoding*))
     "A utility macro to query a key and return a external-format decoded string"
  -  `(mr-data (mc-get+ ,key :memcache ,memcache :mc-use-pool ,mc-use-pool) :external-format ,external-format))
  +  (mr-data (mc-get+ key :memcache memcache :mc-use-pool mc-use-pool) :external-format external-format))
   
   
   
  
positive.code:   (defmacro mc-make-command (command)
      (let ((mc-function (intern (string-upcase (concatenate 'string "mc-" (symbol-name command))))))
        `(export ',mc-function)
        `(defmacro ,mc-function (key data &key (memcache *memcache*) (timeout 0) (flags 0) (noreply nil) (external-format *mc-default-encoding*) (mc-use-pool *mc-use-pool*))
         `(let ((unsigned-byte-data (if (equal (array-element-type ,data) '(UNSIGNED-BYTE 8))
  				      ,data
  				      (flex:string-to-octets ,data :external-format ,external-format))))
  	  (mc-store ,key unsigned-byte-data :memcache ,memcache :command ,',command :timeout ,timeout :flags ,flags :noreply ,noreply :mc-use-pool ,mc-use-pool)))))
  )
  
  
  (mc-make-command :set)
  
negative.code:        do (format t "~%~A ~25T: ~A" (string-capitalize (substitute #\Space #\_ (first x))) (rest x)))))
  
  
  
  ;;; quick tests
  
  (defun mc-quick-test (key data &key (memcache *memcache*) (mc-use-pool *mc-use-pool*))
    (progn
      (if (eql (mc-set key data :memcache memcache :mc-use-pool mc-use-pool) 'STORED)
  	(format t "~%Success SET")
  	(format t "~%Fail SET"))
      (if (= (length (mc-get-value key :memcache memcache :mc-use-pool mc-use-pool)) (length data))
  	(format t "~%Success GET")
  	(format t "~%Fail GET"))))
  
  ;;;EOF
  