anchor.diff:    "Prints the given compiled ParenScript form starting at the given
   indent position."
     (ps-print% (car compiled-form) (cdr compiled-form)))
  +
  +;;; indenter
  +
  +(defparameter *indent-level* 0)
  +(defparameter *indent-num-space* 4)
  +
  +(defun newline-and-indent ()
  +  (when (fresh-line)
  +    (loop repeat (* *indent-level* *indent-num-space*)
  +          do (write-char #\Space))))
   
   ;;; string literals
   (defvar *js-quote-char* #\'
  
positive.code: (defprinter cc-if (test body-forms)
    (write-string "/*@if ")
    (ps-print test)
    (fresh-line)
    (dolist (form body-forms)
      (ps-print form))
    (fresh-line)
    (write-string "@end @*/"))
  
  (defprinter js-instanceof (value type)
  
negative.code: (defprinter js-defun (name args body)
    (print-fun-def name args body))
  
  (defun print-fun-def (name args body-block)
    (format *ps-output-stream* "function ~:[~;~A~](" name (js-translate-symbol name))
    (loop for (arg . rest) on args
          with after = ", "
          unless rest do (setf after "")
          do (progn (write-string (js-translate-symbol arg))
                    (write-string after))
          finally (write-string ") "))
    (ps-print body-block))
  
  ;;; object creation
  (defprinter js-object (slot-defs)
  