(FILECREATED "12-Feb-85 12:07:48" {PHYLUM}<LFG>PARSER>WHATISPATCH.;1 2048   

      changes to:  (FNS \ADDTOFILEBLOCK/WHATIS))


(* Copyright (c) 1985 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT WHATISPATCHCOMS)

(RPAQQ WHATISPATCHCOMS ((FNS \ADDTOFILEBLOCK/WHATIS)))
(DEFINEQ

(\ADDTOFILEBLOCK/WHATIS
  [LAMBDA (USERINPUT ONLY)                                   (* lmm "28-Nov-84 16:49")

          (* decides whether USERINPUT is a file or a list name -
	  if ONLY is nil, means either a listname or a filename is accepatble; if ONLY is LIST then only a listname is 
	  acceptable and if ONLY is FILE then only a file name is acceptable)


    (PROG (TEM UCASE)
          (RETURN (COND
		    ((NULL USERINPUT)                        (* nowhere)
		      NIL)
		    [(LISTP USERINPUT)
		      (COND
			(ONLY (ERROR!))
			(T (SELECTQ (CAR USERINPUT)
				    ((@ Near:)
				      (CONS (QUOTE Near:)
					    (CDR USERINPUT)))
				    (\ADDTOFILEBLOCK/WHATIS (CAR USERINPUT)
							    (QUOTE LIST]
		    ([AND (NEQ ONLY (QUOTE LIST))
			  (OR (FMEMB (SETQ TEM (SETQ UCASE (U-CASE USERINPUT)))
				     FILELST)
			      (LISTP (GETTOPVAL (FILECOMS UCASE)))
			      (SETQ TEM (FIXSPELL UCASE NIL FILELST T]
		      TEM)
		    ((AND (NEQ ONLY (QUOTE FILE))
			  (LISTP (GETTOPVAL USERINPUT)))
		      (LIST USERINPUT))
		    ((AND (NEQ ONLY (QUOTE LIST))
			  (EQ (ASKUSER NIL NIL (LIST "create new file" UCASE)
				       NIL T)
			      (QUOTE Y)))
		      UCASE)
		    ((AND (NEQ ONLY (QUOTE FILE))
			  (EQ (ASKUSER NIL NIL (LIST "create new list" USERINPUT)
				       NIL T)
			      (QUOTE Y)))
		      (LIST USERINPUT))
		    (T                                       (* none of above)
		       (ERROR!])
)
(PUTPROPS WHATISPATCH COPYRIGHT ("Xerox Corporation" 1985))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (295 1966 (\ADDTOFILEBLOCK/WHATIS 305 . 1964)))))
STOP