anchor.diff:    (declare (fixnum ls rs))
     (the boolean (< ls rs)))
   ;;;;;;;;
  -(js-binary-operators
  +(js-operators
  +;;binary
    (+ plus) (- minus) * / (% mod)
  - (== equalp) (< less) > <= >= (!= /=))
  + (== equalp) (< less) > <= >= (!= /=)
  +;;unary
  + (++ 1+) (-- 1-))
   
   (defmacro !binary (op-sym ls rs)
     (let ((op (symbol-function op-sym)))
  
positive.code:   `(sub ,obj ,attr))
  
  (defmacro !assign (op place val)
    `(setf ,place ,val))
  
  (defmacro !num (num) num)
  (defmacro !string (str) str)
  
negative.code:        (defun ,name (&rest ,args2)
  	 (apply (proc ,func) this ,args2)))))
  
  (defmacro js-operators (&rest ops)
    `(progn
       ,@(mapcar (lambda (op)
  		 (if (symbolp op)
  