anchor.diff:    (let ((*package* (if (car args)
                          (make-template-package (car args))
                          *default-translate-package*)))
  -    (iter (for tmpl in (cdr args))
  -          (let ((symbol (intern (lispify-string (car (second tmpl))))))
  -            (export symbol)
  -            (proclaim (list 'ftype
  -                            'function
  -                            symbol))))
       (translate-item backend
                     (cdr args))))
   
  
positive.code: 
  (defmethod translate-template ((backend (eql :common-lisp-backend)) template)
    (translate-template (make-instance 'common-lisp-backend)
                      template))
  
  (defmethod compile-template ((backend (eql :common-lisp-backend)) template)
    (compile-template (make-instance 'common-lisp-backend)
                      template))
  
  (defmethod compile-template ((backend common-lisp-backend) template)
    (eval (translate-template backend template)))
  
  (defmethod compile-template ((backend common-lisp-backend) (templates list))
    (iter (for template in templates)
          (compile-template backend template)))
  
negative.code:        (let ((*autoescape* nil))
           (funcall ,fun-name data)))))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;; proclaim funcitons
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  
  (defun proclaim-template-functions (expr)
    (let ((*package* (if (second expr)
                         (make-template-package (second expr))
                         *default-translate-package*)))
      (iter (for tmpl in (cddr expr))
            (let ((symbol (intern (lispify-string (car (second tmpl))))))
              (export symbol)
              (proclaim (list 'ftype 'function symbol))))))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;; translate and compile template methods
  