anchor.diff:  		   ;; special case handling for strings. there must be a better way of doing this!!!
   		   (if (stringp value)
   			   (pack-string value length buffer (+ start offset))
  -			   (error "Cannot pack ~S as :string for slot ~S" value slot-name)))
  +			   (error "Value ~S is not of type STRING for slot ~S." value slot-name)))
   		  ((> (length value) length)
   		   (error "Array for slot ~S is too large" slot-name))
   		  (t 
  
positive.code:      (%define-alias ',alias ',name)))
  
  (define-type :uint8 
      ((uint buffer start) (setf (elt buffer start) uint))
    ((buffer start) (elt buffer start))
    1)
  
  (define-type :char 
      ((char buffer start)
       (pack-bytes (list (char-code char)) buffer start))
    ((buffer start)
     (let ((bytes (unpack-bytes buffer start 1)))
  
negative.code: 
  (define-type :uint64 
      ((uint64 buffer start)
  	 (declare (integer uint64))
       (pack-bytes (bytes uint64 8) buffer start))
    ((buffer start)
     (unpack-bytes buffer start 8))
  