anchor.diff:  ;;; Order is TO/UPTO BY.
   (define-parser arithmetic-up-11-parser
     (consecutive (lambda (var type-spec to form1 by form2)
  -		 (declare (ignore from to by))
  +		 (declare (ignore from by))
   		 (let ((to-var (gensym))
   		       (by-var (gensym)))
   		   (make-instance 'for-as-arithmetic
  
positive.code: ;;; Order is FROM/UPFROM TO/UPTO.
  (define-parser arithmetic-up-7-parser
    (consecutive (lambda (var type-spec from form1 to form2)
  		 (declare (ignore from to))
  		 (let ((to-var (gensym)))
  		   (make-instance 'for-as-arithmetic
  		     :bindings `((,var ,form1)
  				 (,to-var ,form2))
  		     :termination `(when (> ,var ,to-var) (go end))
  		     :step `(incf ,var))))
  	       (singleton #'identity
  			  (lambda (x) (and (symbolp x) (not (constantp x)))))
  
negative.code: 			  (lambda (x) (and (symbolp x) (not (constantp x)))))
  	       'type-spec-parser
  	       (alternative (keyword-parser 'to)
  			    (keyword-parser 'upto)
  			    (keyword-parser 'below))
  	       (singleton #'identity (constantly t))
  	       (keyword-parser 'by)
  	       (singleton #'identity (constantly t))))
  