anchor.diff:       ,@(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)
  
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: 
  (in-package #:closure-template)
  
  (defclass javascript-backend () ())
  
  (defvar *local-variables* nil)
  
  