anchor.diff:      (let* ((vertex-array (gl:gen-vertex-array))
   	   (buffers (gl:gen-buffers 2))
   	   (vertex-buffer (elt buffers 0))
  -	   (program (link-program)))
  +	   (program (link-program *shader-source* *fragment-source*)))
         (gl:bind-vertex-array vertex-array)
         (gl:bind-buffer :array-buffer vertex-buffer)
         (load-buffer-array #(-1.0 -1.0 0.0
  
positive.code:   (when (eq (glop:keysym event) :escape)
      (glop:push-close-event window)))
  
  (defun link-program ()
    (let ((vs (gl:create-shader :vertex-shader))
  	(fs (gl:create-shader :fragment-shader))
  	(pg (gl:create-program)))
      (gl:shader-source vs *shader-source*)
      (gl:compile-shader vs)
      ;;(print (gl:get-shader-info-log vs))
      (gl:shader-source fs *fragment-source*)
      (gl:compile-shader fs)
      ;;(print (gl:get-shader-info-log fs))
      (gl:attach-shader pg vs)
  
negative.code:   gl_Position.w = 1.0;
  }")
  
  (defparameter *fragment-source*
  "#version 330 core
  out vec3 out_Color;
  void main() {
  