anchor.diff:    (ext:run-shell-command (format nil "gcc ~a -o ~a" *file-out* *exec-out*)))
   
   (defun strof (x)
  -    (format nil "~a" x))
  +  (format nil "~a" x))
   
   (defun f/list (x)
  -    (if (listp x) x (list x)))
  +  (if (listp x) x (list x)))
   
   (defun f/list/n (x &optional (n 1))
     (if (zerop n) x
  
positive.code: (defun write-out (str)
    (if *file-out*
        (with-open-file (stream *file-out* :direction :output :if-exists :append :if-does-not-exist :create)
                        (format stream str))))
  
  (defun change-file (file &optional is-h)
    (setf *exec-out* (c-strify file))
  
negative.code: (defun count-lines-in-file (filename)
    (let ((n 0))
      (with-open-file (stream filename :direction :input :if-does-not-exist nil)
        (if stream
  	  (loop for line = (read-line stream nil 'done)
  	     until (eq line 'done)
  	     do (incr n))))
      n))
  
  (defun read-whole-file (filename)
    (format nil "~{~a~^~%~}"
  	  (with-open-file (stream filename :direction :input :if-does-not-exist nil)
              (if stream
                  (loop for line = (read-line stream nil 'done)
  		   until (eq line 'done)
  		   collect line)))))
  
  (defun c-whole-file (filename)
    (let ((s (read-whole-file filename)) (result t) (n 0))
      (apply #'c (loop while result collect
  		    (progn
  		      (multiple-value-setq (result n) (read-from-string s nil))
  		      (setf s (subseq s n))
  		      result)))))
  
  (defun cwf (filename)
    (format t "~a" (c-whole-file filename)))
  
  (defun tempfilename (&optional extension)
    (labels ((genfilename () (strsof `(temp ,(random 1.0) ,extension))))
      (let ((filename (genfilename)))
        (loop while (probe-file filename) do
  	   (setf filename (genfilename)))
        filename)))
  
  (defun c-cl-file (filein fileout)
    (let ((s (c-whole-file filein)))
      (if s
    (with-open-file (c-file-stream fileout :direction :output :if-does-not-exist :create)
      (format c-file-stream "~a" s)))))
  
  (defun compile-cl-file (filein &key fileout tags libs c-file cc)
    (def fileout "a.out")
    (def tags "")
    (def libs "")
    (def cc "gcc")
    (let ((c-code (c-whole-file filein)) (temp-file (if c-file c-file (tempfilename ".c"))))
      (format t "~a" c-file)
      (if (and *last-compiled* (not (eq *last-compiled* c-file))) (delete-file *last-compiled*))
      (with-open-file (c-file-stream temp-file :direction :output :if-does-not-exist :create)
        (format c-file-stream "~a" c-code))
      (format t "Running: ~a ~a ~a -o ~a ~a~%" cc tags temp-file fileout libs)
      (ext:run-shell-command (format nil "~a ~a ~a -o ~a ~a" cc tags temp-file fileout libs))
      (setf *last-compiled* temp-file)))
  
  (defun compile-and-run-cl-file (filein &key args fileout tags libs c-file cc)
    (def fileout "a.out")
    (compile-cl-file filein
  		   :fileout fileout
  		   :tags tags
  		   :libs libs
  		   :c-file c-file
  		   :cc cc)
    (format t "Running: ./~a~{~^ ~a~}~%" fileout args)
    (ext:run-shell-command (format nil "./~a~{~^ ~a~}" fileout args)))
  
  (compile 'write-out)
  (compile 'change-file)
  