anchor.diff:             (*glsl-functions* (acons-many struct-functions 
                                            *glsl-functions*))
              (compiled-obj (compile-main code))
  -           (compiled-in-vars 
  +           (compiled-in-vars
   	     (let ((compiled (compile-declarations
   			      in-var-declarations :in))) 
   	       (if first-shader
   		   (add-layout-qualifiers-to-in-vars compiled)
  -		   (list compiled))))
  +		   (mapcar #'list compiled))))
              (compiled-uniforms (compile-declarations 
   			       (mapcar #'list uniform-vars)
   			       :uniform)))
  
positive.code: (defmacro defshader? (name (&rest args) &body code)  
    (if (keywordp name)
        (error "Cannot define shader with keyword name")
        `(let ((source (translate ',args ',code)))
  	 (print (cadar source))
  	 nil)))
  
  (defmacro defshader (name (&rest args) &body code)  
    (if (keywordp name)
        (error "Cannot define shader with keyword name")
        `(let ((source (translate ',args ',code)))
  	 (defun ,name ()
  	   source))))
  
  
negative.code:        (remove-if #'null
                    (list
                     (mapcar #'struct-init-form struct-definitions)
                     (mapcar #'(lambda (x) (current-line (first x))) 
  			   (remove-if #'null in-vars))
                     (mapcar #'current-line uniforms)
                     (to-top code))))))
  
  