anchor.diff:  
   (in-package #:closure-template)
   
  -(defclass javascript-backend (common-lisp-backend) ())
  +(defclass javascript-backend () ())
   
   (defvar *local-variables* nil)
   
  
positive.code:                 (translate-item backend
                                  (third args)))))))
  
  (defmethod translate-named-item ((backend javascript-backend) (item (eql 'closure-template.parser:switch-tag)) args)
    `(case ,(translate-expression backend (first args))
       ,@(iter (for clause in (cddr args))
  
negative.code:      ,@(if (second args) (list (list t
                                       (translate-item backend
                                                       (second args)))))))
  
  (defmethod translate-named-item ((backend javascript-backend) (item (eql 'closure-template.parser:for-tag)) args)
    (let* ((loop-var (intern (string-upcase (second (first (first args))))))
           (*local-variables* (cons loop-var
                                    *local-variables*))
           (from-expr (translate-expression backend
                                            (second (second (first args)))))
           (below-expr (translate-expression backend
                                             (third (second (first args)))))
           (by-expr (translate-expression backend
                                          (fourth (second (first args))))))
      `(loop
          for ,loop-var from ,(if below-expr from-expr 0) below ,(or below-expr from-expr) ,@(if by-expr (list 'by by-expr))
          do ,(translate-item backend
                              (cdr args)))))
  
  
  (defmethod translate-named-item ((backend javascript-backend) (item (eql 'closure-template.parser:call)) args)
  