anchor.diff:  		  year month day hour min sec))
   	(terpri f)
   	(let ((name (pathname-name (pathname pathspec))))
  -	  (format f "(defpackage #:~A (:use #:cl #:frpc))~%" name)
  +	  (format f "(defpackage #:~A~%" name)
  +	  (format f "    (:use #:cl #:frpc)~%")
  +	  (format f "    (:export ~%")
  +	  (dolist (form forms)
  +	    (when (eq (car form) :program)
  +	      (destructuring-bind (pname id &rest versions) (cdr form)
  +		(declare (ignore pname id))
  +		(dolist (version versions)
  +		  (destructuring-bind (v vname num &rest rpcs) version
  +		    (declare (ignore v vname num))
  +		    (dolist (rpc rpcs)
  +		      (format f "    #:~A~%" (cadr rpc))))))))
  +	  (format f "))~%~%")
   	  (format f "(in-package #:~A)~%" name))
   	(dolist (form forms)
   	  (cond
  
positive.code:   (parse-with-lexer (xdr-lexer string) *xdr-parser*))
  
  (defun gen (pathspec &optional outfile)
    (let ((body
  	 (with-open-file (f pathspec :direction :input)
  	   (with-output-to-string (s)
  
negative.code: 		 ((null l))
  	       (princ l s) 
  	       (fresh-line s))))))
  ;;    (test-lexer body)
      (let ((forms (test-parser body)))
        (with-open-file (f (or outfile 
  			     (merge-pathnames (make-pathname :type "lisp")
  