anchor.diff:               :package package))
   
   (defun lisp-eval-internal (emacs-rex-fun rex-arg package)
  -  (let ((tag (gensym)))
  +  (let ((tag (gensym))
  +        (thread-id (current-swank-thread)))
       (catch tag
         (funcall emacs-rex-fun
                  *connection*
  
positive.code:                                   (declare (ignore condition))
                                    (editor-error "Synchronous Lisp Evaluation aborted"))))
                 :package package
                 :thread (current-swank-thread))
        (loop (sit-for 10 nil)))))
  
  (defun lisp-eval-from-string (string &optional (package (current-package)))
    (lisp-eval-internal 'emacs-rex-string string package))
  
negative.code: 
  (defun interactive-eval (string)
    (eval-with-transcript `(swank:interactive-eval ,string)))
  
  (defun eval-print (string)
    (let ((value (lisp-eval `(swank:eval-and-grab-output ,string))))
      (insert-string (current-point) (first value))
      (insert-string (current-point) (second value))))
  
  (defun new-package (name prompt-string)
    (setf (connection-package *connection*) name)
  