anchor.diff:  				  :hash-table-form hash-table-form
   				  :other-var (cadr using-arg))
   				(cdr body))))))))))
  +
  +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  +;;;
  +;;; Clauses FOR/AS package
  +;;;
  +;;;    for-as-package::= var [type-spec] being {each | the}  
  +;;;                      {symbol | symbols | 
  +;;;                      present-symbol | present-symbols | 
  +;;;                      external-symbol | external-symbols} 
  +;;;                      [{in | of} package] 
  +
  +(defclass for/as-package-subclause (for/as-subclause)
  +  ((%package-form :initarg :package-form :reader package-form)))
  +
  +(defclass for/as-package-symbols-subcause (for/as-package-subclause) ())
  +
  +(defclass for/as-package-present-symbols-subcause (for/as-package-subclause) ())
  +
  +(defclass for/as-package-external-symbols-subcause (for/as-package-subclause) ())
   
   ;;; This function is called when we have already seen `for/as var
   ;;; being each' and then either symbol, symbols, present-symbol,
  
positive.code: (defclass with-clause (clause subclauses-mixin variable-clause-mixin) ())
  
  (defclass with-subclause (var-and-type-spec-mixin)
    ((%form :initarg :form :reader form)
     (%form-present :initarg :form-present :reader form-present)))
  
  (define-elementary-parser parse-and-with-subclause body (#:and)
    (multiple-value-bind (var type-spec rest1)
  
negative.code: 	   (cond ((or (null body)
  		      (not (symbol-equal (car body) '#:using)))
  		  (values (make-instance 'for/as-hash-key-subclause
  			    :hash-table-form hash-table-form
  			    :other-var nil)
  			  body))
  		 ((null (cdr body))
  		  (error 'expected-hash-value-but-end))
  