anchor.diff:      (setf h (logxor h (ash h -6)))))
   
   (defun upload-changes (file)
  +  "Push changes to the file out to the remote file. 
  +FILE ::= a file uploader structure, as returned from MAKE-UPLOADER."
     (declare (type file file))
     (with-open-file (f (file-pathspec file) :direction :input :element-type '(unsigned-byte 8))
       (if (= (file-write-date f) (file-timestamp file))
  
positive.code: 		  ;; hashes differ, push changes
  		  (nfs:call-write (file-handle file)
  				  offset
  				  (if (= n 4096) buffer (subseq buffer 0 n))
  				  :client (file-client file))))))))))
  
  
  (defun make-uploader (pathspec handle client)
    (declare (type rpc-client client))
    (let ((file (make-file :pathspec pathspec
  			 :client client
  
negative.code: ;;; A potential usecase might be to aid interactive development with a remote Lisp system.
  
  (defpackage #:nefarious.upload 
    (:use #:cl #:nefarious #:frpc)
    (:export #:make-uploader
  	   #:upload-changes))
  
  (in-package #:nefarious.upload)
  
  