anchor.diff:         
          (defmethod print-object ((obj ,name) out)
   	 (print-unreadable-object (obj out :type t)
  -	   (format out "impl:~X, iface:~X, ~s:~s @ ~X of ~s:~X" (cffi:pointer-address (implementation obj)) (cffi:pointer-address (interface obj))
  +	   (format out "impl:~s, iface:~s, ~s:~s @ ~X of ~s:~X" (implementation obj) (interface obj)
   		   ;;(wl-resource-get-class (->resource obj))
   		   (id obj) (wl-resource-get-id (->resource obj)) (cffi:pointer-address (->resource obj)) (client obj) (cffi:pointer-address (wl-resource-get-client (->resource obj)))
   		   )))
  
positive.code: 	(iface (intern (concatenate 'string (string-upcase (symbol-name name)) "-INTERFACE")))
  	(impl-fn (intern (concatenate 'string "IMPLEMENT-" (string-upcase (symbol-name name)))))
  	(set-impl-fn (intern (concatenate 'string "SET-IMPLEMENTATION-" (string-upcase (symbol-name name)))))
  	(make-fn (intern (concatenate 'string "MAKE-" (string-upcase (symbol-name name))))))
      `(progn
         (defparameter ,impl nil)
  
negative.code: 			,@(apply #'concatenate 'list (mapcar (lambda (x)
  							       `(,(first x) (cffi:callback ,(second x))))
  							     impls)))))
  	 (let ((,->resource (wl-resource-create (->client client)
  						,iface
  						version
  						id)))
  	   (when implementation?
  	     (wl-resource-set-implementation ,->resource
  					     ,impl
  					     (if supplied
  						 (->resource resource)
  						 ,->resource)
  					     delete-fn))
  	   (make-instance ',name
  			  :->resource ,->resource
  			  :client client
  			  :id id
  			  :version version
  			  :implementation ',impl
  			  :interface ',iface))))))
  
  (defmethod initialize-instance :before ((resource wl-resource) &key ->resource client version id implementation interface)
    (setf (->resource resource) ->resource)
    (setf (id resource) id)
    (setf (interface resource) interface)
    (setf (implementation resource) implementation)
    (setf (client resource) client)
    (push resource (resources client)))
  
  (defclass wl-rect ()
    ((x :accessor x :initarg :x :initform 0)
  