anchor.diff:    (reopen-connection *connection*))
   
   (defmacro with-connection ((&key (host #(127 0 0 1))
  -                                 (port 6379))
  +                                 (port 6379)
  +                                 auth)
                              &body body)
     "Evaluate BODY with the current connection bound to a new connection
   specified by the given HOST and PORT"
     `(let ((*connection* (make-instance 'redis-connection
  -                                      :host ,host :port ,port)))
  +                                      :host ,host :port ,port :auth ,auth)))
        (unwind-protect (progn ,@body)
          (disconnect))))
   
  
positive.code:     :initarg  :port
      :initform 6379
      :reader   conn-port)
     (socket
      :initform nil
      :accessor conn-socket)
  
negative.code:                                         :element-type 'flex:octet)))
                                  :external-format +utf8+
                                  #-lispworks :element-type
                                  #-lispworks 'flex:octet))
    (when (conn-auth conn)
      (let ((*connection* conn)) ; AUTH needs *CONNECTION* to be bound
                                 ; to the current connection.  At this
                                 ; stage, *CONNECTION* is not bound yet.
        (auth (conn-auth conn)))))
  
  (defun close-connection (conn)
    "Close the socket of CONN."
  