anchor.diff:  ; operator ::= one of *, /, %, +, -, <<, >>, >>>, < >, EQL,
   ;              ==, !=, =, ===, !==, &, ^, |, &&, AND, ||, OR.
   ; single-operator ::= one of INCF, DECF, ++, --, NOT, !
  -; argument ::= a ParenScript expression
  +; argument ::= a Parenscript expression
   
   ;;; Operator forms are similar to function call forms, but have an
   ;;; operator as function name.
   ;;;
   ;;; Please note that `=' is converted to `==' in JavaScript. The `='
  -;;; ParenScript operator is not the assignment operator. Unlike
  -;;; JavaScript, ParenScript supports multiple arguments to the
  +;;; Parenscript operator is not the assignment operator. Unlike
  +;;; JavaScript, Parenscript supports multiple arguments to the
   ;;; operators.
   
   (* 1 2)   => 1 * 2
  
positive.code: ; (PROGN {statement}*) in statement context
  ; (PROGN {expression}*) in expression context
  ;
  ; statement  ::= a ParenScript statement
  ; expression ::= a ParenScript expression
  
  ;;; The `PROGN' special form defines a sequence of statements when
  ;;; used in a statement context, or sequence of expression when used
  
negative.code: 
  ; (TRY body {(:CATCH (var) body)}? {(:FINALLY body)}?)
  ;
  ; body ::= a list of Parenscript statements
  ; var  ::= a Lisp symbol
  
  ;;; The `TRY' form is converted to a JavaScript `try' statement, and
  