anchor.diff:  (define-js-binary bit-and "&")
   (define-js-binary bit-or "|")
   
  -(define-js-macro make-array (&rest ignored)
  -  "[]")
  +(define-js-macro make-array (&rest elements)
  +  `(%transpiler-native "[" ,@(transpiler-binary-expand "," elements) "]"))
   
   (define-js-macro aref (arr &rest idx)
     `(%transpiler-native ,arr
  
positive.code: 
  ;;;; TOPLEVEL
  
  (defun js-transpile (x)
    (with-open-file f (open "tre-base.js" :direction 'output)
      (format t "Compiling JavaScript core functions...~%")
      (format f "~A" (transpiler-pass2 *js-transpiler* *js-base*)))
    (transpiler-transpile *js-transpiler* x "js.js"))
  
  (defun js-machine (outfile)
    (with-open-file f (open outfile :direction 'output)
  
negative.code: 		  (list (first x) ":" (second x))))
     "}"))
  
  (define-js-macro %new (&rest x)
    `(%transpiler-native "new " ,(first x) "(" ,@(transpiler-binary-expand "," (cdr x)) ")"))
  
  ;; Make object if first argument is not a keyword, or string.
  (define-js-std-macro new (&rest x)
    (if (and (consp x)
  		   (or (keywordp (first x))
  			   (stringp (first x))))
  	  `(make-hash-table ,@x)
  	  `(%new ,@x)))
  
  (define-js-macro vm-go (tag)
    `("__l=\"" ,(transpiler-symbol-string *js-transpiler* tag) "\"; continue"))
  
  