anchor.diff:  #+clisp
   (defvar *loaded-libraries* ())
   
  -(defun load-dso (filename)
  -  #+sbcl(sb-alien:load-shared-object filename)
  -  #+cmu(ext:load-foreign filename)
  -  #+clisp
  -  (unless (find filename *loaded-libraries* :test #'equal)
  -    (ffi::foreign-library (namestring filename))
  -    (push filename *loaded-libraries*)))
  +(defun load-shared-object (pathname)
  +  (let ((namestring (ensure-namestring pathname)))
  +    #+sbcl(sb-alien:load-shared-object namestring)
  +    #+cmu(ext:load-foreign namestring)
  +    #+clisp
  +    (unless (find namestring *loaded-libraries* :test #'equal)
  +      (ffi::foreign-library namestring)
  +      (push namestring *loaded-libraries*))))
   
   
  -(defmethod perform ((o load-op) (c unix-dso))
  +(defmethod perform ((o load-op) (c shared-object))
     (let ((co (make-instance 'compile-op)))
  -    (let ((filename (car (output-files co c))))
  -      (load-dso filename))))
  +    (let ((pathname (car (output-files co c))))
  +      (load-shared-object pathname))))
   
   
   
  
positive.code: 		    :directory (butlast (pathname-directory dir))
  		    :defaults dir))))
  
  (defmethod perform :after ((operation compile-op) (dso unix-dso))
    (let ((output (first (output-files operation dso)))
  	(inputs (mapcar #'unix-name
  		 (mapcan #'(lambda (c)
  			     (output-files operation c))
  		  (module-components dso)))))
  
negative.code:  #-(or darwin win32)"so" #+darwin"dylib" #+win32"dll")
  
  
  ;;; The following code is more or less copied from sb-bsd-sockets.asd,
  ;;; but extended to allow flags to be set in a general way. The class
  ;;; has been renamed from unix-dso to shared-object as this code no
  ;;; longer is unix specific
  
  (defclass shared-object (module)
    ((ldflags :initform nil :initarg :ldflags)))
  
  ;; For backwards compatibility
  (defclass unix-dso (shared-object)
    ())
  
  (defun ensure-namestring (pathname)
    (namestring 
     (typecase pathname
       (logical-pathname (translate-logical-pathname pathname))
       (t pathname))))
  
  (defmethod input-files ((operation compile-op) (dso shared-object))
    (mapcar #'component-pathname (module-components dso)))
  
  (defmethod output-files ((operation compile-op) (dso shared-object))
    (let ((dir (component-pathname dso)))
      (list
       (make-pathname :type *dso-extension*
  