(FILECREATED "23-Jul-86 23:41:25" ("compiled on " {ERIS}SOURCES>MACROS.;46) "23-Jul-86 04:26:56" "COMPILE-FILEd" in "Xerox Lisp 23-Jul-86 ..." dated "23-Jul-86 04:52:47") (FILECREATED "23-Jul-86 23:40:59" {ERIS}SOURCES>MACROS.;46 41879 changes to: (VARS MACROSCOMS) previous date: "20-Jul-86 21:04:09" {ERIS}SOURCES>MACROS.;45) (RPAQQ MACROSCOMS ((PROP MACRO NEQ NLISTP ZEROP ADD1 SUB1 SETQQ ERSETQ NLSETQ RPTQ NCONC1 XNLSETQ UNDONLSETQ RESETVAR RESETFORM RESETLST RESETSAVE RESETTOPVALS RESETBUFS SELECT SELECTC IGEQ ILEQ GEQ LEQ FLESSP IMIN IMAX PROG2 EVENP ODDP SIGNED UNSIGNED LIST*) (COMS (* "obsolete Interlisp macro functions") (FNS EXPANDMACRO MACROEXPANSION EXPAND-DEFMACRO COMPUTE-MACRO-ARGS MACROS.GETDEF GETMACROPROP EXPANDOPENLAMBDA) (GLOBALVARS NOFIXFNSLST BYTECOMPFLG CLISPARRAY BYTEMACROPROP)) (PROP MACRO CONSTANT LOADTIMECONSTANT DEFERREDCONSTANT) (FNS CSELECT) (COMS (FNS PRINTCOMSTRAN) (GLOBALVARS COMMENTFLG LCASEFLG PRINTOUTMACROS) (ADDVARS (PRINTOUTMACROS)) (VARS PRINTOUTTOKENS) (PROP INFO PRINTOUT printout) (PROP MACRO PRINTOUT printout)) (ADDVARS * (LIST (CONS ( QUOTE SYSPROPS) MACROPROPS))) (PROP PROPTYPE * (PROGN MACROPROPS)) (PROP SETFN GETTOPVAL) (PROP FILETYPE MACROS) (DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) (NLAML) (LAMA COMPUTE-MACRO-ARGS EXPAND-DEFMACRO))))) (PUTPROPS NEQ MACRO ((X Y) (NULL (EQ X Y)))) (PUTPROPS NLISTP MACRO ((X) (NULL (LISTP X)))) (PUTPROPS ZEROP MACRO (OPENLAMBDA (X) (COND ((EQ X 0)) ((FLOATP X) (FEQP X 0.0))))) (PUTPROPS ADD1 MACRO ((X) (IPLUS X 1))) (PUTPROPS SUB1 MACRO ((X) (IDIFFERENCE X 1))) (PUTPROPS SETQQ MACRO ((X V) (SETQ X (QUOTE V)))) (PUTPROPS ERSETQ MACRO ((X) (.ERRSETQ. X T))) (PUTPROPS NLSETQ MACRO ((X . Y) (.ERRSETQ. (PROGN X . Y) NIL))) (PUTPROPS RPTQ MACRO ((N . FORMS) (PROG ((RPTN N) RPTV) (DECLARE (LOCALVARS RPTN RPTV)) RPTQLAB (COND ((IGREATERP RPTN 0) (SETQ RPTV (PROGN . FORMS)) (SETQ RPTN (SUB1 RPTN)) (GO RPTQLAB))) (RETURN RPTV))) ) (PUTPROPS NCONC1 MACRO ((LST X) (NCONC LST (CONS X)))) (PUTPROPS XNLSETQ MACRO ((X FLG FN) (.ERRSETQ. X FLG FN))) (PUTPROPS UNDONLSETQ MACRO ((UNDOFORM UNDOFN) (PROG ((LISPXHIST LISPXHIST) UNDOSIDE0 UNDOSIDE UNDOTEM) (DECLARE (SPECVARS LISPXHIST)) (COND ((LISTP (SETQ UNDOSIDE (LISTGET1 LISPXHIST (QUOTE SIDE)))) (SETQ UNDOSIDE0 (CDR UNDOSIDE))) (T (SETQ UNDOSIDE0 UNDOSIDE) (SETQ UNDOSIDE (LIST 0)) (COND (LISPXHIST ( LISTPUT1 LISPXHIST (QUOTE SIDE) UNDOSIDE)) (T (SETQ LISPXHIST (LIST (QUOTE SIDE) UNDOSIDE)))))) ( RESETVARS (#UNDOSAVES) (SETQ UNDOTEM (XNLSETQ UNDOFORM NIL UNDOFN))) (COND ((EQ UNDOSIDE0 (QUOTE NOSAVE)) (LISTPUT1 LISPXHIST (QUOTE SIDE) (QUOTE NOSAVE))) (T (UNDOSAVE))) (COND (UNDOTEM (RETURN UNDOTEM))) (UNDONLSETQ1 (CDR UNDOSIDE) (LISTP UNDOSIDE0)) (RETURN)))) (PUTPROPS RESETVAR MACRO ((VAR VAL FORM) (PROG (MACROX MACROY) (SETQ MACROX (SETQ RESETVARSLST (CONS ( CONS (QUOTE VAR) (CONS (STKSCAN (QUOTE VAR)) (GETATOMVAL (QUOTE VAR)))) RESETVARSLST))) (SETQ MACROY ( XNLSETQ (PROGN (SETATOMVAL (QUOTE VAR) VAL) FORM) (QUOTE INTERNAL))) (SETATOMVAL (QUOTE VAR) (CDDAR MACROX)) (SETQ RESETVARSLST (CDR MACROX)) (COND (MACROY (RETURN (CAR MACROY)))) (ERROR!)))) (PUTPROPS RESETFORM MACRO (OPENX (SUBPAIR (QUOTE (FN FORM . EXPRESSIONS)) (CONS (CAAR OPENX) OPENX) ( QUOTE (PROG ((OLDVALUE FORM) MACROX MACROY RESETSTATE) (DECLARE (LOCALVARS MACROX MACROY)) (SETQ MACROX (SETQ RESETVARSLST (CONS (LIST (LIST (QUOTE FN) OLDVALUE)) RESETVARSLST))) (COND ((NOT (XNLSETQ (SETQ MACROY (PROGN . EXPRESSIONS)) INTERNAL)) (SETQ RESETSTATE (QUOTE ERROR)))) (SETQ RESETVARSLST ( CDR MACROX)) (APPLY (QUOTE FN) (CDAAR MACROX)) (RETURN (COND (RESETSTATE (ERROR!)) (T MACROY)))))))) (PUTPROPS RESETLST MACRO ((X . Y) (PROG (RESETY RESETZ (LISPXHIST LISPXHIST)) (RESETRESTORE RESETVARSLST (SETQ RESETZ (COND ((XNLSETQ (SETQ RESETY (PROGN X . Y)) INTERNAL) NIL) (T (QUOTE ERROR)) ))) (RETURN (COND (RESETZ (ERROR!)) (T RESETY)))))) (PUTPROPS RESETSAVE MACRO (X (LIST (QUOTE SETQ) (QUOTE RESETVARSLST) (LIST (QUOTE CONS) (COND ((AND ( ATOM (CAR X)) (CAR X)) (SUBPAIR (QUOTE (VAR VAL)) X (QUOTE (PROG1 (CONS (QUOTE VAR) (CONS (STKSCAN ( QUOTE VAR)) (GETATOMVAL (QUOTE VAR)))) (SETATOMVAL (QUOTE VAR) VAL))))) ((CDR X) (LIST (QUOTE LIST) ( CADR X) (CAR X))) (T (LIST (QUOTE LIST) (LIST (QUOTE LIST) (LIST (QUOTE QUOTE) (COND ((EQ (CAAR X) ( QUOTE SETQ)) (CAR (CADDAR X))) (T (CAAR X)))) (CAR X))))) (QUOTE RESETVARSLST))))) (PUTPROPS RESETTOPVALS MACRO (ARGS (CONS (QUOTE RESETLST) (NCONC (MAPCAR (CAR ARGS) (FUNCTION (LAMBDA (V) (CONS (QUOTE RESETSAVE) V)))) (CDR ARGS))))) (PUTPROPS RESETBUFS MACRO ((A . B) ((LAMBDA ($$BUFS) (DECLARE (LOCALVARS $$BUFS)) (PROG1 (PROGN A . B) (AND $$BUFS (BKBUFS $$BUFS)))) (PROGN (LINBUF) (SYSBUF) (CLBUFS NIL T READBUF))))) (PUTPROPS SELECT MACRO (X (CSELECT X))) (PUTPROPS SELECTC MACRO (F (CONS (QUOTE SELECTQ) (CONS (CAR F) (MAPLIST (CDR F) (FUNCTION (LAMBDA (I) (COND ((CDR I) (CONS (CONSTANT (EVAL (CAAR I))) (CDAR I))) (T (CAR I)))))))))) (PUTPROPS IGEQ MACRO ((X Y) (NOT (ILESSP X Y)))) (PUTPROPS ILEQ MACRO ((X Y) (NOT (IGREATERP X Y)))) (PUTPROPS GEQ MACRO ((X Y) (NOT (LESSP X Y)))) (PUTPROPS LEQ MACRO ((X Y) (NOT (GREATERP X Y)))) (PUTPROPS FLESSP MACRO (LAMBDA (X Y) (FGREATERP Y X))) (PUTPROPS IMIN MACRO (DEFMACRO (&OPTIONAL (ARG1 NIL ARG1GIVEN) (ARG2 NIL ARG2GIVEN) &REST RESTARGS) ( COND ((NOT ARG1GIVEN) (QUOTE MAX.INTEGER)) ((NOT ARG2GIVEN) (BQUOTE (FIX %, ARG1))) (RESTARGS (BQUOTE (IMIN (IMIN2 %, ARG1 %, ARG2) ., RESTARGS))) (T (LIST (QUOTE IMIN2) ARG1 ARG2))))) (PUTPROPS IMAX MACRO (DEFMACRO (&OPTIONAL (ARG1 NIL ARG1GIVEN) (ARG2 NIL ARG2GIVEN) &REST RESTARGS) ( COND ((NOT ARG1GIVEN) (QUOTE MIN.INTEGER)) ((NOT ARG2GIVEN) (BQUOTE (FIX %, ARG1))) (RESTARGS (BQUOTE (IMAX (IMAX2 %, ARG1 %, ARG2) ., RESTARGS))) (T (BQUOTE (IMAX2 %, ARG1 %, ARG2)))))) (PUTPROPS PROG2 MACRO ((X . Y) (PROGN X (PROG1 . Y)))) (PUTPROPS EVENP MACRO (DEFMACRO (N &OPTIONAL (MODULUS 2)) (BQUOTE (EQ 0 (IMOD %, N %, MODULUS))))) (PUTPROPS ODDP MACRO ((X . TAIL) (NOT (EVENP X . TAIL)))) (PUTPROPS SIGNED MACRO (ARGS (COND ((EQ COMPILE.CONTEXT (QUOTE EFFECT)) (CAR ARGS)) (T (CONS (QUOTE ( OPENLAMBDA (N WIDTH) (COND ((IGREATERP N (SUB1 (LLSH 1 (SUB1 WIDTH)))) (* done this way just so that ( SIGNED X 2^16) doesn't box) (SUB1 (IDIFFERENCE N (SUB1 (LLSH 1 WIDTH))))) (T N)))) ARGS))))) (PUTPROPS UNSIGNED MACRO ((X WIDTH) (LOGAND X (SUB1 (LLSH 1 WIDTH))))) (PUTPROPS LIST* MACRO (X (COND ((NULL X) NIL) ((NULL (CDR X)) (CAR X)) ((NULL (CDDR X)) (CONS (QUOTE CONS) X)) (T (LIST (QUOTE CONS) (CAR X) (CONS (QUOTE LIST*) (CDR X))))))) EXPANDMACROA0001 D1 (NAME ERRORSET F 0 EXP F 1 MACROY) Phi i ci(12Q TERPRI 5 PRINTDEF) NIL () EXPANDMACRO D1 (P 11Q RESETSTATE P 10Q MACROY P 6 OLDVALUE P 5 PCF P 4 NCF P 3 MACRODEF P 2 ALLFLG P 1 EFF P 0 VCF I 3 COMPILE.CONTEXT I 2 OPTIONS I 1 QUIETFLG I 0 EXP F 12Q RESETVARSLST F 13Q COMPILERMACROPROPS) CghCgB@1Jg@d` ` b@W @dK bJA@i 1 gNhhWc_og g_OcgO Oh(207Q ERROR! 177Q APPLY 147Q EXPANDMACROA0001 111Q OUTPUT 72Q MACROEXPANSION 63Q GETMACROPROP 50Q GETHASH 41Q GETHASH) (167Q OUTPUT 153Q ERROR 144Q INTERNAL 117Q OUTPUT 45Q CLISPARRAY 36Q CLISPARRAY 26Q CLISP 12Q EFFECT 3 EFFECT) ( 141Q (EXPANDMACROA0001)) MACROEXPANSION D1 (P 5 PREDF P 4 PCF P 3 NCF P 2 VCF P 1 EFF P 0 EXP I 3 COMPILE.CONTEXT I 2 COMPFLG I 1 MACRODEF I 0 EXPR F 6 LAMBDASPLST) A@AdgAdgdgA@dgA@dgA@ dgdggA@ Ad@AdgA lAdVBgA@ @CgCgh3gA@ bgJA(261Q APPLY 225Q APPLY 171Q SUBPAIR 135Q EXPAND-DEFMACRO 103Q EXPANDOPENLAMBDA) (267Q IGNOREMACRO 252Q NLAMBDA 241Q EFFECT 234Q EFFECT 216Q NLAMBDA 160Q PROGN 125Q DEFMACRO 117Q APPLY* 110Q APPLY 72Q OPENLAMBDA 56Q = 42Q NLAMBDA 34Q LAMBDA 21Q PROGN) () EXPAND-DEFMACROA0001 D1 (F 0 DEF) gP (10Q EVAL) (2 PROGN) () EXPAND-DEFMACRO D1 (L (2 DEFAULT-VALUE 1 FORM) P 3 *MACRO-VALS* P 2 *MACRO-VARS* P 1 *MACRO-DEFAULT* P 0 *MACRO-FORM* I 0 DEF) 'AB"@Ah gJghhK dgA(35Q APPLY 14Q COMPUTE-MACRO-ARGS) (41Q IGNOREMACRO 23Q EXPAND-DEFMACROA0001 17Q LAMBDA) () COMPUTE-MACRO-ARGS D1 (L (2 CONTEXT 1 MACRO-CALL-BODY 0 ARGUMENT-LIST) F 6 *MACRO-VARS* F 7 *MACRO-VALS* F 10Q *MACRO-FORM* F 11Q *MACRO-DEFAULT*) @d@Vc AWc@dgdg@Ah @Agbbbdg!@Wg @Agbbbdg!@hg @Agbbb{dg@Agbbbcdg@AgbbbJg@bddGdgdgdghb@QH HHHHdH AY,hMHJL g @bJig KIIBdgU@B@!HHAIIhg @J gI@Ah Uig A>@Wg:g#@dHd H g Ao@ @Ah @Abb(735Q COMPUTE-MACRO-ARGS 724Q ERROR 702Q COMPUTE-MACRO-ARGS 674Q EVAL 622Q COMPUTE-MACRO-ARGS 610Q COMPUTE-MACRO-ARGS 570Q EVAL 560Q COMPUTE-MACRO-ARGS 467Q COMPUTE-MACRO-ARGS 443Q COMPUTE-MACRO-ARGS 435Q EVAL 412Q MAKE-KEYWORD 162Q COMPUTE-MACRO-ARGS 116Q COMPUTE-MACRO-ARGS 50Q COMPUTE-MACRO-ARGS) (677Q ONE 645Q AUX 640Q ONE 617Q ONE 573Q ONE 555Q ONE 514Q OPTIONAL 464Q ONE 440Q ONE 334Q &AUX 326Q &ALLOW-OTHER-KEYS 320Q &REST 274Q &KEY 256Q AUX 244Q &AUX 225Q OPTIONAL 213Q &OPTIONAL 171Q AUX-ONLY 157Q ONE 145Q &ENVIRONMENT 125Q AUX-ONLY 113Q ONE 77Q &WHOLE 57Q AUX-ONLY 34Q &BODY 26Q &REST) ( 720Q "macro body missing value for") MACROS.GETDEF D1 (I 2 OPTIONS I 1 TYPE I 0 NAME F 5 MACROPROPS) T@AH\I U3LgLgg@Lg@LLhJ KhZLK&(21Q MKPROGN) (64Q PUTPROPS 53Q DEFMACRO 46Q DEFMACRO 34Q MACRO) () GETMACROPROP D1 (P 2 VAL P 1 X I 1 PROPS I 0 FN) A!Hh@I ZHX(20Q GETPROP) NIL () EXPANDOPENLAMBDA D1 (P 15Q A P 7 TMP P 6 GENARGS P 5 VAL P 4 SUBSTPAIRS P 3 VALS P 2 ARGS P 1 A P 0 FORMALS I 1 ACTUALS I 0 OPENLAM) @ HAnHdhLK;@bLJML@ bJgJ ZggJh@K A _Ol JJKKL0 J^] _IO_ddi3 gOhLIJMKHAbRd O _O Oh_O&_OZ@ bEA@ (362Q MKPROGN 357Q \NCONC2 344Q SUBPAIR 303Q PACK* 300Q GENSYM 202Q CONSTANTEXPRESSIONP 145Q \TYPEMASK.UFN 130Q \APPEND2 124Q REVERSE 100Q REVERSE 61Q SUBLIS) (231Q QUOTE 107Q LOCALVARS 104Q DECLARE 74Q LAMBDA) () (PUTPROPS CONSTANT MACRO (MACROX (PROG ((VAL (APPLY (QUOTE PROG1) MACROX))) (RETURN (COND ((CONSTANTOK VAL) (KWOTE VAL)) (T (CONS (QUOTE LOADTIMECONSTANT) MACROX))))))) (PUTPROPS LOADTIMECONSTANT MACRO ((X) (DEFERREDCONSTANT X))) (PUTPROPS DEFERREDCONSTANT MACRO (X (LIST (SUBST (CAR X) (QUOTE FORM) (QUOTE (LAMBDA (MACROX) (DECLARE (LOCALVARS MACROX)) (OR (CDR MACROX) (FRPLACD (FRPLACA MACROX (EVQ FORM)) T)) (CAR MACROX)))) (KWOTE (CONS))))) CSELECT D1 (L (0 L)) 0@d@lggP@\"KYHgooIh@hiLhM0 L.Lh'dgJH@h_O Oh_O&_O]dgM]LO Nh_LzN&_INIL (217Q OR 142Q EQ 57Q LAMBDA 32Q COND 26Q .SELEC.) ( 67Q (DECLARE (LOCALVARS .SELEC.)) 63Q (.SELEC.)) PRINTCOMSTRAN D1 (P 20Q RESETOUT P 17Q TEMP P 16Q ARG P 12Q WIDTH P 11Q POINT P 10Q TYPE P 7 ARG P 4 FORMATLIST P 3 VARS I 4 FROMDWIM I 3 FILEFORM I 2 MACROS I 1 TAIL I 0 FORM F 21Q PRINTOUTTOKENS F 22Q VARS F 23Q FAULTFN) aD&0BdIHhZH&JW"W$ !@A NRD@@hddW& C5@kAb`ACd޿O ggCChhOii_lOLO l.Ol _lIOlFuOlgOl _dk _3 XOKOgOlIggO0O-OOkgOOk _dk I JhYJ&HhLN^@kChb B_i_ OAkMbAbAAb_dggAAbjggAAbOjOdigCggoCnOdgi_ AAbYggAAbCDOgOgOgOdg6gAAbgCOgOgOgOghCg"AAb_gOd3 gO COgOgOdgLgggggCggOdggggOgghChhhggkC[OdgglCIgglC;OdggAAbC$ggAAbgCh OdggAAbAbgOgOgOdg:gAAbAbjOgOgiOgOgiCgOdg$gAAbAbAbOghCfg(gggl hCggCoh;OL_gOAAb#O3 gOCjOgjOCgOhC_OOh__$O&_CgooOCCghgO(1710Q CHARACTER 1116Q PACK* 415Q SUBATOM 404Q STRPOS 314Q SUBATOM 303Q STRPOS 250Q NTHCHARCODE 232Q CHCON1 101Q DWIMIFY0? 46Q \APPEND2 43Q \APPEND2) (2133Q PROGN 2122Q $$OUTPUT 2077Q LAMBDA 2024Q TAB 2013Q SPACES 1776Q PRIN1 1753Q PRINTNUM 1724Q PROGN 1721Q POSITION 1703Q QUOTE 1700Q PRIN3 1675Q PROGN 1667Q .PAGE 1654Q .PARA2 1626Q PRINTPARA 1617Q .PARA2 1607Q .PARA 1571Q .CENTER2 1562Q .CENTER 1551Q .CENTER2 1542Q .FR2 1520Q FLUSHRIGHT 1511Q .CENTER2 1501Q .CENTER 1471Q .FR2 1461Q .FR 1437Q PRINTNUM 1430Q .N 1413Q TERPRI 1401Q FRPTQ 1373Q .SKIP 1355Q SPACES 1347Q .SP 1333Q SPACES 1326Q %,,, 1315Q SPACES 1307Q %,, 1274Q SPACES 1267Q %, 1245Q  1237Q .BASE 1231Q  1224Q .SUP 1217Q  1211Q .SUB 1203Q QUOTE 1200Q PRIN3 1172Q SUPERSCRIPTFONT 1167Q CHANGEFONT 1164Q PROGN 1161Q FONTCHANGEFLG 1156Q AND 1147Q .BASE 1137Q .SUP 1127Q .SUB 1111Q FONT 1077Q CHANGEFONT 1057Q .FONT 1043Q .PPFTL 1033Q .PPVTL 1025Q .PPFTL 1015Q .PPF 1006Q POSITION 774Q PRINTDEF 765Q .PPVTL 755Q .PPFTL 745Q .PPV 735Q .PPF 715Q PRIN2 710Q .P2 664Q # 646Q PRIN1 641Q .RESET 632Q TERPRI 601Q TAB 574Q .TAB 556Q TAB 550Q .TAB0 373Q %. 351Q FLOAT 345Q FIX 334Q QUOTE 274Q %. 152Q OUTPUT 147Q RESETFORM) ( 2107Q (DECLARE (LOCALVARS $$OUTPUT)) 2103Q ($$OUTPUT) 1732Q (0) 652Q (CONSTANT (CHARACTER (CHARCODE CR)))) (ADDTOVAR PRINTOUTMACROS) (RPAQQ PRINTOUTTOKENS (.RESET .TAB # %, %,, %,,, .P2 .PPF .PPV .PPFTL .PPVTL .TAB0 .FR .FR2 .CENTER .CENTER2 .PARA .PARA2 .PAGE .FONT .SUP .SUB .BASE .SP .SKIP .N)) (PUTPROPS PRINTOUT INFO NOEVAL) (PUTPROPS printout INFO NOEVAL) (PUTPROPS PRINTOUT MACRO (DEFMACRO (&WHOLE X) (PRINTCOMSTRAN X (FUNCTION CDDR) PRINTOUTMACROS ( FUNCTION CADR)))) (PUTPROPS printout MACRO (DEFMACRO (&WHOLE X) (PRINTCOMSTRAN X (FUNCTION CDDR) PRINTOUTMACROS ( FUNCTION CADR)))) (ADDTOVAR SYSPROPS ALTOMACRO MACRO BYTEMACRO DMACRO) (PUTPROPS ALTOMACRO PROPTYPE MACROS) (PUTPROPS MACRO PROPTYPE MACROS) (PUTPROPS BYTEMACRO PROPTYPE MACROS) (PUTPROPS DMACRO PROPTYPE MACROS) (PUTPROPS GETTOPVAL SETFN SETTOPVAL) (PUTPROPS MACROS FILETYPE COMPILE-FILE) (PUTPROPS MACROS COPYRIGHT ("Xerox Corporation" 1984 1985 1986)) STOP