anchor.diff:  ;;; driver
   
   (defun toplevel ()
  +  ;; NOTE: The C version of the tutorial doesn't initialize any target, but
  +  ;;       expects that a JIT is created. I think it's just out of date.
  +  (llvm:initialize-native-target)
     ;; install standard binary operators
     ;; 1 is lowest precedence
     (setf (gethash #\= *binop-precedence*) 2
  
positive.code:                  (llvm:params function)
                   (arguments expression))
              function)
            (error 'kaleidoscope-error :message "redefinition of function with different # args"))
          (error 'kaleidoscope-error :message "redefinition of function")))
      ;; Set names for all arguments.
      (map nil
  
negative.code:        (get-next-token)
         (when (eql *current-token* 'tok-number)
           (unless (<= 1 *number-value* 100)
             (error 'kaleidoscope-error
                    :message "Invalid precedence: must be 1..100"))
           (setf binary-precedence *number-value*)))
        (otherwise (error 'kaleidoscope-error
                          :message "Expected function name in prototype")))
      (unless (eql (get-next-token) #\()
        (error 'kaleidoscope-error :message "Expected '(' in prototype"))
      (let ((arg-names (coerce (loop while (eql (get-next-token) 'tok-identifier)
  