anchor.diff:    `(progn (set-specware-shell nil)
   	  ,@fms))
   
  +(defun lisp-value (val)
  +  (setq *** **
  +	** *
  +	* val)
  +  val)
  +
   (defun process-sw-shell-command (command argstr)
     (if (and (consp command) (null argstr))
  -      (progn (eval command))
  +      (lisp-value (eval command))
       (case command
         (help (let ((cl-user::*sw-help-strings*
   		   (if *developer?*
  
positive.code: 	      (catch #+allegro 'tpl::top-level-break-loop
  		     #-allegro nil
  		(let ((form (read *standard-input* nil magic-eof-cookie)))
  		  (cond ((member form '(quit exit))
  			 (setq exiting-lisp? t)
  			 (cl-user::exit))
  
negative.code: (defun specware-shell (exiting-lisp?)
    (let  ((magic-eof-cookie (cons :eof nil))
  	 (number-of-eofs 0)
  	 (cl:*package* cl:*package*)
  	 (sw-shell-pkg (find-package :SWShell))
  	 * ** ***
  	 ch)
      (emacs::eval-in-emacs "(set-comint-prompt)")
      (setq *emacs-eval-form-after-prompt* nil)
  