anchor.diff:         (ensure-connection ,=connection=)
          (labels ((,=body= ()
                     (provide-reconnect-restart (progn ,@body)
  -                    (open-connection ,=connection=)
  +                    (reopen-connection ,=connection=)
                       (,=body=))))
            (,=body=)))))
   
  
positive.code:   (unless (open-connection-p connection)
      (signal-connection-error-with-reconnect-restart
       :message "Connection to Redis server lost."
       :restart (open-connection connection))))
  
  (defmacro with-reconnect-restart (connection &body body)
    "When, inside BODY, an error occurs that breaks the stream of CONNECTION,
  
negative.code:   "Close the stream of CONNECTION."
    (socket-close (connection-socket connection)))
  
  (defun reopen-connection (connection)
    "Close and reopen CONNECTION."
    (close-connection connection)
    (open-connection connection))
  
  (defun ensure-connection (connection)
    "Ensure that CONNECTION is open before doing anything with it."
    (unless connection
  