anchor.diff:  (define-condition abort-prompt ()
     ())
   
  -(defclass prompt-window-parameters ()
  +(defclass prompt-parameters ()
     ((completion-function
       :initarg :completion-function
       :reader prompt-window-completion-function)
  
positive.code:                          existing-test-function
                           history-name
                           &optional syntax-table)
    (declare (ignore syntax-table))
    (when (lem::frame-prompt-window (current-frame))
      (editor-error "recursive use of prompt window"))
    (let* ((called-window (current-window))
           (prompt-window (show-prompt prompt-string
                                       initial-string
                                       (make-instance 'prompt-window-parameters
                                                      :completion-function completion-function
                                                      :existing-test-function existing-test-function
                                                      :called-window called-window
  
negative.code:     (handler-case
          (with-unwind-setf (((lem::frame-prompt-window (current-frame))
                              prompt-window))
              (with-current-syntax syntax-table
                (lem::command-loop))
            (delete-prompt prompt-window))
        (abort-prompt ()
          (error 'editor-abort))
  