anchor.diff:  	  (if (null list)
   	      (return (coerce (nreverse result) 'string)))))))
   
  -(defun handle-condition (err)
  +(defun handle-condition (condition)
     (format *error-output*
   	  (str " *~A*~%~A~%")
  -	  (red (bright (format nil "~A" (class-name (class-of err)))))
  -	  (red (bright (format nil "~A" err))))
  -  (if (string= (class-name (class-of err)) "INTERACTIVE-INTERRUPT")
  +	  (red (bright (format nil "~A" (class-name (class-of condition)))))
  +	  (red (bright (format nil "~A" condition))))
  +  (if (string= (class-name (class-of condition)) "INTERACTIVE-INTERRUPT")
         (format *error-output* "~&~A~%" (red "If you want to quit, type 'exit', 'quit', '(exit)', '(quit)', or Ctrl-D")))
     (force-output *error-output*))
   
  -(defmacro handling-errors (&body body)
  +(defmacro with-handle-conditions (&body body)
     `(handler-case
          (progn ,@body)
  -     (CONDITION (e)
  -       (handle-condition e))))
  +     (condition (c)
  +       (handle-condition c))))
   
   (defvar *history* 0)
   (defvar *prompt-before* "")
  
positive.code:     (get-current-package-name) *history*))
  (defvar *continue-prompt*
    '(format nil (cyan "~A> ")
      (coerce (make-array
  	     (- (length (filter-escapes *prompt-before*)) 2)
  	     :initial-element #\-) 'string)))
  (defvar *right-prompt*
    '(let* ((dir (namestring *default-pathname-defaults*))
  	  (impl (getenv "LISP_IMPL")))
      (when (char/= (aref dir (1- (length dir))) #\/)
        (setf dir (concatenate 'string dir "/")))
      (let* ((len (string<  (getenv "HOME") dir))
  	   (subdirp (and len (= len (length (getenv "HOME"))))))
        (when subdirp (setf dir (concatenate 'string "~" (subseq dir len (1- (length dir)))))))
      (format nil "~a ~a" (blue "(" impl ")")  (cyan dir))))
  
  (defun print-prompt (stream &optional continuep)
    (let* ((left (eval (if continuep *continue-prompt* *left-prompt*)))
  	 (col (or (parse-integer (or (getenv "COLUMNS") "") :junk-allowed t) 75)))
      (unless (opt :no-right)
  
negative.code: (in-package :cl-user)
  (defpackage cim.repl
    (:use :CL :cim)
    (:export :*history*
  	   :print-prompt
  	   :with-handle-conditions
  	   :strf))
  (in-package :cim.repl)
  
  (defun get-current-package-name ()
    (or (car (package-nicknames *package*))
        (package-name *package*)))
  
  (defmacro make-color (name before after)
    (let ((str (gensym "strings")))
      `(defun ,name (&rest ,str)
         (apply #'concatenate
  		(append '(string)
  		 (list ,(if (opt :no-color) "" before)) ,str (list ,(if (opt :no-color) "" after)))))))
  
  (defmacro make-colors ((name before after) &rest clauses)
    `(progn
  