Google
 

Trailing-Edge - PDP-10 Archives - -
There are no other files named in the archive.
(FILECREATED "18-MAR-77 17:41:21" <LISPUSERS>IGNORECHAR.;2 3313   

     changes to:  IGNORECHAR SETIGNORECHAR IGNORECHARCOMS

     previous date: "18-MAR-77 16:51:45" <TEITELMAN>IGNORECHAR.;1)


(PRETTYCOMPRINT IGNORECHARCOMS)

(RPAQQ IGNORECHARCOMS [(FNS IGNORECHAR SETIGNORECHAR)
		       (VARS (IGNORECHAR)
								(RESTOREIGNORECHAR)
			     (LASTRATEST (QUOTE NOTCHECKED])
(DEFINEQ

(IGNORECHAR
  [LAMBDA (FL RDTBL TCONCLST)                               (* wt: 18-MAR-77 16 50)
    (PROG (READLINEFLG NEXTCODE NEXTCHAR TEM LASTCHAR)
          [COND
	    ((NULL TCONCLST)
	      (SETQ READLINEFLG (READLINEP]
          [COND
	    ((EQ LASTRATEST (QUOTE NOTCHECKED))
	      (SETQ LASTRATEST (COND
		  (TCONCLST (RATEST T))
		  (READLINEFLG SPACEFLG)
				(T	(RATEST T]|                            (* check to see if the IGNORE CHARACTER interrupted an 
							    atom and if we now have to do some packing.)
          (COND
	    ((COND
		[TCONCLST (OR (NULL (CDR TCONCLST))
			      (NOT (ATOM (CADR TCONCLST]
		[READLINEFLG (OR (NULL LINE)
				 (NOT (ATOM (CAR (LAST LINE]
		(T T))                                      (* no packing to be done.)
	      )
	    ((EQ (SETQ NEXTCHAR (PEEKC FL))
		 IGNORECHAR)
	      (RETURN TCONCLST))
	    ((OR LASTRATEST (SYNTAXP (SETQ NEXTCODE (CHCON1 NEXTCHAR))
				     (QUOTE SEPR)
				     RDTBL)
		 (SYNTAXP NEXTCODE (QUOTE BREAK)
			  RDTBL)))
	    [TCONCLST (RPLACA (CDR TCONCLST)
			      (PACK (LIST (CADR TCONCLST)
					  (READ FL RDTBL]
	    [READLINEFLG                                    (* ignore character came in the middle of an atom)
			 (RPLACA (SETQ TEM (LAST LINE))
				 (PACK (LIST (CAR TEM)
					     (READ FL RDTBL]
	    (T (SHOULDNT)))
          (SETQ LASTRATEST (QUOTE NOTCHECKED))
          (COND
	    (READLINEFLG (SETQ TCONCLST (TCONC TCONCLST HISTSTR4))
												     |                                          (* we are in a call to read under readline.
											we want the read to return, and its value to be 
							    ignored.)
			 ))
          (RETURN TCONCLST])

(SETIGNORECHAR
  [LAMBDA (CHAR/CODE RDTBL)                                 (* wt: 18-MAR-77 17 40)
    (PROG (CHAR CODE)
										(COND  |
					((AND	IGNORECHAR RESTOREIGNORECHAR)
							(SETSYNTAX|IGNORECHAR RESTOREIGNORECHAR RDTBL)))
          [COND
					((NULL	CHAR/CODE)
							(SETQ IGNORECHAR NIL)
							(RETURN NIL))
					((NUMBERP CHAR/CODE)
							(SETQ CODE|CHAR/CODE)
							(SETQ CHAR|(CHARACTER CHAR/CODE)))
	    (T (SETQ CHAR CHAR/CODE)
	       (SETQ CODE (CHCON1 CHAR/CODE]
          (SETQ IGNORECHAR CHAR)
										(SETQ RESTOREIGNORECHAR (GETSYNTAX CHAR RDTBL))
          (SETSYNTAX CHAR (QUOTE (INFIX IMMEDIATE ALWAYS IGNORECHAR))
		     RDTBL)
          (SETQ LASTRATEST (QUOTE NOTCHECKED))
          (RETURN CHAR/CODE])
)

(RPAQ IGNORECHAR NIL)

(RPAQ RESTOREIGNORECHAR NIL)

(RPAQQ LASTRATEST NOTCHECKED)
(DECLARE: DONTCOPY
  (FILEMAP (NIL (419 3187 (IGNORECHAR 431 . 2223) (SETIGNORECHAR 2227 . 3184)))))
STOP