anchor.diff:               UNDER THE CONDITIONS LISTED IN THE GNU PUBLIC LICENSE.~4%")
     (block :top-level
       (loop
  -     (format t "~&> ")
  -     (let ((line (read-line *standard-input* nil nil)))
  -       (unless line (return-from :top-level))
  -       (if (eq :bye (basic-process-line line))
  -         (return-from :top-level)))))
  +       (format t "~&> ")
  +       (let ((line (read-line *standard-input* nil nil)))
  +         (unless line (return-from :top-level))
  +         (if (eq :bye (basic-process-line line))
  +             (return-from :top-level)))))
     (values))
   
   
  
positive.code:       (incf (car *data-ptr*)))
      (if (and (< (car *data-ptr*) (array-dimension *program* 0))
               (aref *program* (car *data-ptr*)))
        (setf (cdr *data-ptr*) (cdr (aref *program* (car *data-ptr*))))))
    ;;(format t "data-ptr= ~S~%" *data-ptr*)
    (if (null (cdr *data-ptr*))
      (progn  (berror "NO MORE DATA TO READ.") nil)
      (if (and (cdr (cdr *data-ptr*))
               (or (null (cddr (cdr *data-ptr*)))
                   (not (eq '|,| (cadr (cdr *data-ptr*))))
                   (not (or (stringp (car (cdr *data-ptr*)))
                            (numberp (car (cdr *data-ptr*)))))))
        (progn (berror "MALFORMED DATA LINE ~A." (car *data-ptr*))    nil)
        (prog1 (pop (cdr *data-ptr*)) (pop (cdr *data-ptr*))))))
  
  
  
  
negative.code:            or else nil.
  "
    (if (or (<= linenum 0) (<= (array-dimension *program* 0) linenum))
        (progn (setq *current-line* nil)
               nil)
        (do* ((linenum linenum (1+ linenum))
              (line (aref *program* linenum) (aref *program* linenum)) )
             ((or line (= (array-dimension *program* 0) (1+ linenum)))
              (if line
                  (progn (setq *current-line* linenum)
                         line)
                  (progn (setq *current-line* nil)
                         nil))))))
  
  
  
  