anchor.diff:    (height :float))
   
   (defstruct rectangle
  - x
  - y
  - width
  - height)
  + x y width height)
   
   (defmethod translate-into-foreign-memory (object (type rectangle-type) pointer)
     (with-foreign-slots ((x y width height) pointer (:struct %rectangle))
  
positive.code:  (z :float))
  
  (defstruct vector3
   x
   y
   z)
  
  (defmethod translate-into-foreign-memory (object (type vector3-type) pointer)
    (with-foreign-slots ((x y z) pointer (:struct %vector3))
  
negative.code:   (ft :int))
  
  (defstruct image
   data width height maps ft)
  
  (defmethod translate-into-foreign-memory (object (type image-type) pointer)
    (with-foreign-slots ((data width height maps ft) pointer (:struct %image))
  