anchor.diff:         (progv ,vars ,values
            ,@body))))
   
  -(defun run-shell-commands-in-stream (stream &key prompt-stream)
  +(defun run-shell-commands-in-stream (stream)
     (let* ((form-queue (make-queue))
            (commands (restartable-command-iterator stream form-queue))
  +         (*fresh-prompt* t)
            last-result)
  -    (display-prompt stream prompt-stream)
       (restart-case
           (do-iterator (tree commands)
             (loop
  
positive.code: 
  (defparameter *shell-readtable* +standard-shell-readtable+)
  
  (defclass echo (trivial-gray-streams:fundamental-character-output-stream)
      ())
  
  (defmethod trivial-gray-streams:stream-write-char ((s echo) char)
    (format *standard-output* "CHAR: ~W~%" char)
    char)
  
  
negative.code:     (when *enable-lisp-splice*
        (setf *shell-readtable* *splice-table*))
  
      (run-shell-commands-in-stream (make-instance 'interactive-buffer))))
  