anchor.diff:  
   
   ;; now acts a lot like a C++-struct, (:conc-name NIL) ensures that the automatically
  -;; reader functions of a struct don't start with program-data-.. which is the default
  -;; behaviour but with nothing at all, NIL. A string could be specified after :conc-name
  -;; to get custom prefix reader string: (:conc-name "foo-") -> (foo-the-program obj)
  -;; This solution has been chosen, instead of
  -;; (defclass program-data (...) :accessor the-program)
  -;; due to DEFCLASS considered overkill. Plus it has a nice print representation by
  -;; default.  hmmm TODO: (class-of <program-data-obj>) ==> #<STRUCTURE-CLASS TEST>
  +;; generated reader functions of a struct don't start with program-data-.. which is the
  +;; default behaviour but with nothing at all, NIL. A string could be specified after
  +;; :conc-name to get custom prefix reader string: (:conc-name "foo-") -> (foo-the-program
  +;; obj) This solution has been chosen, instead of (defclass program-data (...) :accessor
  +;; the-program) due to DEFCLASS considered overkill. Plus it has a nice print
  +;; representation by default.  hmmm TODO: (class-of <program-data-obj>) ==>
  +;; #<STRUCTURE-CLASS TEST>
   (defstruct (program-data (:conc-name NIL)) ; don't hyphenate struct readers
     the-program
   
  
positive.code: 	(sdl2:with-gl-context (gl-context win)
  	  ;; INIT code:
  	  (init)
  	  
  	  ;; TODO: callback for reshape; for now used to setup cam-to-clip-space matrix
  	  (reshape 500.0 500.0)
  	  (sdl2:with-event-loop (:method :poll)
  	    (:mousewheel
  	     (:y y) ; stores the vertical mousewheel motion
  
  	     ;; zoom in/out
  	     (when (= y 1)
  
negative.code: 				    (glutil::pole-direction
  				     *view-pole*
  				     (glm:vec3 0.0 0.0 -1.0)))
  	       (format t "pos:~a~%~%"
  		       (glm:round-obj (glutil::cam-pos *view-pole*) 0.001)))
  	     (when (= y -1)
  	       (glutil::move-camera *view-pole*
  				    (glutil::pole-direction
  				     *view-pole*
  				     (glm:vec3 0.0 0.0 1.0)))
  	       (format t "pos:~a~%~%"
  		       (glm:round-obj (glutil::cam-pos *view-pole*) 0.001))))
  	    
  	    (:mousemotion
  	     (:x x :y y :xrel xrel :yrel yrel :state state)
  