anchor.diff:  
   (defun lerp (delta low high)
     "Linearly interpolate between low and high."
  -  (declare (type scalar delta low high)
  -           (optimize (speed 3)))
  +  (declare (type scalar delta low high))
     (the scalar (+ low (* delta (- high low)))))
   
   (defun square (s)
  -  (declare (type scalar s)
  -           (optimize (speed 3)))
  -  (the scalar (* s s)))
  +  (declare (type scalar s))
  +  (* s s))
   
    ;;; vecmath.lisp ends here
  
positive.code: ;;;
  
  ;;; We are going to define a lot of functions inline
  ;;; 
  (defmacro definline (name params &body body)
    `(progn
       (declaim (inline ,name))
  
negative.code:   (defun ensure-scalar (s)
      (coerce s 'scalar)))
  
  (declaim (ftype (function (number) scalar) invert negate half inverse-sqrt square))
  (declaim (inline invert negate half inverse-sqrt lerp square))
  
  (defun invert (s)
    "Return one over scalar."
    (the scalar (/ +scalar-one+ s)))
  
  (define-compiler-macro invert (&whole form s)
    (cond ((and (constantp s) (not (typep s 'scalar)))
           `(invert ,(ensure-scalar s)))
          (t
           `(,@form))))
  
  (defun negate (s)
    "Return s * -1."
    (the scalar (* s -1)))
  
  (defun half (s)
    "Return half the value."
  