anchor.diff:    "Consume contents of until EOL or EOF."
     (loop until (or (is-at-newline scanner)
                     (is-at-end scanner))
  -     do (advance scanner)))
  +        do (advance scanner)))
   
   (-> process-string (scanner) null)
   (defun process-string (scanner)
  
positive.code:     :comma :dot :minus :plus :star :slash :semicolon
  
      ;; One or two character tokens
      :bang :bang-equal
      :equal :equal-equal
      :greater :greater-equal
      :less :less-equal
  
      ;; Literals
      :identifier :string :number
  
      ;; Keywords.
      :and :class :else :false :fun :for :if :nil :or
      :print :return :super :this :true :var :while
  
      :eof))
  
  
negative.code: (defun scan-tokens (input)
    "Scan tokens from input. Return vector of scanned tokens."
    (loop with scanner = (make-instance 'scanner :source input)
          until (is-at-end scanner) do
            (move-start-to-current scanner)
            (scan-token scanner)
          finally
             (return (progn
                       (move-start-to-current scanner)
                       (add-token scanner :eof)
                       (tokens scanner)))))
  
  (-> add-token (scanner token-type &optional t) null)
  (defun add-token (scanner token-type &optional literal)
  