hưs8p,FALCONF2D p,COMPILE-DATADRWKClaude Debussy(pF}FDp,COMPILER,NEW-DESTINATIONSpGLOBALlTpB SITEpB LMIpB SOURCE-FILE-GENERIC-PATHNAME1DplFSMAKE-FASLOAD-PATHNAMEDpB+QUOTESYSDB:pB lUNSPECIFICDB:DSYSDB:QCDEFSDB:B>DB:B>pB QFASL-SOURCE-FILE-UNIQUE-ID1DB8DB:lDJDB:DSKDB:DlLSYSDB:QCDEFSDB:LISPDB:FpB lREADTABLEpB lZLpB BASEFpB ,PACKAGEpB ,COMPILER9COMPILER-FASD-SWITCHFFÀLENGTHFFCINTERNAL-FFFF:F+j"@ C@AfB@@@A  @A C@AfB@@@A@A Ab@bB C%C@BAB@BACj@%CAB@B@B$CABAF;F F'FCTNF&FUNCALLF#D*FASD-INTERFACE*F B:FlNo fasd interface function. ~s in ~s modeFÀFERRORFDNULLB}FCIFFB:FBFGETFB}FLETDÀMACROB|OBg9ÂCOMPILER-TARGET-SWITCHFFFF:F+j"@ C@AfB@@@A  @A C@AfB@@@A@A Ab@bB C%C@BAB@BACj@%CAB@B@B$CABAF;F F'B}F&B~F#DC*TARGET-COMPUTER*F B:FNo target interface function. ~s in ~s modeFBFDBB}FBFB:FBFBFB}FBDBBOB1DpBvDEFVAR-RESETTABLE-1DB:BDB:LAMBDA-INTERFACEDB:BNIL9TARGET-PROCESSOR-SYMBOLF:F@B@A@B@@@A @A@B@A@B@@@A@AjE@BAF;FFBFl*TARGET-COMPUTER* is ~s, which is unknownFpB FALCONF CKF BFpB LAMBDAFBBOB1DDEFPROPBFDEFINEB1DBBPEEPB1DBBÀQLAPPB1DBBP2SBINDP2SBIND-FOR-TOPLEVEL1DBBASSIGN-LAP-ADDRESSESB1DBBVAR-COMPUTE-INITB1DBBCP2B1DBDB:BDB:ÂLAMBDA-FASD-INTERFACEDB:BB1DBBFASD-FILE-PROPERTY-LISTB1DBDB:QCOMPILE-TEMPORARY-AREABBArea for compilation itself (within QC-TRANSLATE-FUNCTION) to cons in.1DpBv,DEFVAR-1CGENERATING-MICRO-COMPILER-INPUT-PBlThis is T if the compiler is generating macro-code to pass to the micro compiler.In that case, the code is generated a little differentlyso as to lead to more optimal microcode.(Actually, it can fail to be valid macrocode, in little ways).1DBFUNCTION-BEING-PROCESSEDpB ,UNBOUNDFunction the compiler was called on. Bound only inside the closure used in EH:*ERROR-MESSAGE-HOOK*1DpBvlDEFFLAVOR2DB:ÁINTERNAL-ERRORDB:BDB:DBDB:DDpB lDEFAULT-INIT-PLISTpB FORMAT-STRING~Compiler-internal error~%~A: ~S~DpB DOCUMENTATIONSignaled for a compiler bug or fatal condition9BARFFFFF:F j$@ @B@A@B@B"A BAF;FF pB FORMAT-ARGSFBFBFl~%<< While compiling ~S >>FÁ*ERROR-OUTPUT*OB1DBÂFUNCTION-TO-BE-DEFINEDBFunction spec to be defined as the result of the current compilation.1DBÂNAME-TO-GIVE-FUNCTIONB,This is the function spec to put in the name of the fef produced by the compilation.Usually this is the same as FUNCTION-TO-BE-DEFINED.1DpBvlDEFCONST-1COMPILER-VERBOSEB,T means print name of each function when its compilation begins.1DBÂTHIS-FUNCTION-ARGLISTBArglist of the function being compiled. Used for warnings on recursive calls.1DBTHIS-FUNCTION-ARGLIST-FUNCTION-NAMEB,Name of function that THIS-FUNCTION-ARGLIST is the arglist for.1DBHOLDPROGB-If NIL, the lap instructions are typed out on the terminalinstead of being saved up for lap.1DBÁ*SPECIALFLAG*BT means the function has bound a special variable.This information goes into the FEF.1DBDB:CLOCAL-DECLARATIONSBB,List of local declarations made by LOCAL-DECLARE or DECLARE.Each one is a list starting with a local declaration type,followed by more information meaningful according to that type.1DBDB:ÂUNDO-DECLARATIONS-FLAGBBT during file-to-file compilation, causes DEFMACRO and DEFSUBST to work differently.They push elements on FILE-LOCAL-DECLARATIONS rather thanactually defining functions in the environment.1DBDB:CFILE-SPECIAL-LISTBBlList of symbols declared globally special in file being compiled.1DBDB:FILE-UNSPECIAL-LISTBBList of symbols declared globally unspecial in file being compiled.1DBDB:FILE-LOCAL-DECLARATIONSBBlLike LOCAL-DECLARATIONS for declarations at top level in file being compiled.However, SPECIAL and UNSPECIAL declarations are handled differentlyusing FILE-SPECIALS and FILE-UNSPECIALS, for greater speed in SPECIALP.1DBDB:SELF-FLAVOR-DECLARATIONBBlThis is non-NIL if we are supposed to compiledirect accesses to instance variables of SELF.Its value then is (flavor-name (special-instance-var-names...) instance-var-names...)1DBCBARF-SPECIAL-LISTB,List of symbols automatically made special in this file.1DBTHIS-FUNCTION-BARF-SPECIAL-LISTBlList of symbols used free in this function but not declared special.These are the symbols that have been warned about for this function.1DBINHIBIT-SPECIAL-WARNINGSBlIf non-NIL, no warning is made about free references to variables.1DB*CLOBBER-NONSPECIAL-VARS-LISTS*1DB*BINDP*Bl*BINDP* on pass 1 is T if %BIND is called in the current frame.It is then consed into the internal form of the frame, for pass 2's sake.1DBQCMP-OUTPUTBlAn ART-Q-LIST array into which the lap-instructions are stored by pass 2.1DBÂQC-TF-PROCESSING-MODEB,What kind of compilation this is. Either MACRO-COMPILE or MICRO-COMPILE.1DBCQC-TF-OUTPUT-MODEB,QC-TF-OUTPUT-MODE is used by LAP to determine where to put the compiled code.It is COMPILE-TO-CORE for making an actual FEF, or QFASL, or REL, orQFASL-NO-FDEFINE to simply dump a FEF without trying to define a function(poor modularity).1DB*TLEVEL*Bl*TLEVEL* on pass 1 is T if we are at "top level" within the function being compiled,not within any actual function calls.If a LET is seen when *TLEVEL* is set, the locals of the prog canbe initialized by the entry to the function.1DBCTLFUNINITB,TLFUNINIT on pass 1 is T if we have already seen a variable initialized to theresult of a function call. Such initializations can't be done exceptby compiled code, and once we have initialized one thing that wayall succeeding variables must be initialized by code as well.(This applies to serial binding constructs. Parallel is a little different)1DB*FAST-ARGS-POSSIBLE*B,*FAST-ARGS-POSSIBLE* on pass 1 is T if we haven't come acrossany argument to this function with a non-NIL initialization.If this remains T after all the arguments are processed,then it is an optimization to make top-level prog varsbe initialized at function entry instead of by code.1DBC*P1VALUE*BDuring pass 1, *P1VALUE* is NIL when compiling a form whose value is to be discarded.P1VALUE is COMPILER::PREDICATE when compiling for predicate value (nilness or non-nilness)P1VALUE is an integer n when compiling for at most n values (1  most-positive-fixnum)P1VALUE is T when compiling for all the values which the form will return.On pass 2, "destinations" are used instead, with a bit more information.1DBP1VALUE1DCFORWARD-VALUE-CELLDB:B_DB:B[1DB*CHECK-STYLE-P*B-During pass 1, means to perform style checking on the current outermost form beingcompiler. Inner forms will have their style checked regardless of this flag, unlesssomebody arranges otherwise.1DBC*SELF-REFERENCES-PRESENT*BSet to T during pass 1 if any SELF-REFs are generated.1DBPEEP-ENABLEB-PEEP-ENABLE, if T, means that the peephole optimizer should be used.The only reason for setting this to NIL is if you suspect a bug in peephole optimization.1DB*INHIBIT-OPTIMIZERS*BlIf T, bypasses all calls to optimizers (Rewriters still happen).The only reason for setting this to T is if you suspect a bug introduced by an optimizer.1DBFUNCTIONS-REFERENCEDBFUNCTIONS-REFERENCED is a list of all functions referred to in the file beingcompiled, and not defined in the world. Each element has as its CAR thename of the function, and as its CDR a list of the names of the functionswhich referenced it.1DBBgB-During pass 1, means to perform style checking on the current outermost form beingcompiler. Inner forms will have their style checked regardless of this flag, unlesssomebody arranges otherwise.1DB*BREAKOFF-COUNT*1DB*LEXICAL-CLOSURE-COUNT*BlCounts number of lexical closures we had to make.1DBÄ*HIGHEST-LEXICAL-CLOSURE-DISCONNECTED*B,Hopefully this will work!Bound to 0 in QCOMPILE0 just before calling P2. Then, it is used toensure that each stack closure is only disconnected only once.This depends on our guess that they get disconnected in increasing order.1DB*COMPILER-AREA*DCMAKE-AREApB NAMEDB:ÁCOMPILER-AREApB REGION-SIZEpB ROOMB-1DBDB:INSIDE-QC-TRANSLATE-FUNCTIONBBT while inside QC-TRANSLATE-FUNCTION1DB*COMPILING-BREAKOFFS-P*BT when compiling breakoffs for a functions.1DBÃ*PLACEHOLDER-FUNCTION-NUMBER*1DB*PLACEHOLDER-ALIST*1DCADD-INITIALIZATIONlCompiler warm bootDB:DCCOMPILER-WARM-BOOTpB WARM9B<=FFCDEALLOCATE-WHOLE-RESOURCEF>F:FAF;FÃCOMPILER-TEMPORARIES-RESOURCEOB9CLOCKING-RESOURCESFFFF:F j"@ Cj@$BACAF;FFDDBBDÁ.CONTINUATION.DÁUSING-RESOURCEDÀTEMPSBDBDDBBDFASD-HASH-TABLEDÀSECONDBDFASD-EVAL-HASH-TABLEDÀTHIRDBDBCDÀFOURTHBDÂFASD-TYO-BUFFER-ARRAYDÀFIFTHBDSENDBpB lCLEAR-HASHDBBBDSETFDFILL-POINTERBCDMULTIPLE-VALUE-PROG1DBDBBBDBBBDARRAY-INITIALIZEBCBFDDECLAREDCDOWNWARD-FUNCTIONDplEHUNINTERESTING-FUNCTIONBFBFFLETDBBOB9CLOCKING-RESOURCES-NO-QFASLFFFF:F j"@ Cj@$BACAF;FFDDBBDBDBDBBDBDDBBDBBDBBDBCDBBDBBDBDBBCDBDBDBBCBFDBDBDBBFBFBDBBOB9DpB ,PROPERTYBpBvRESOURCE-CONSTRUCTOR<=F F pBhLISTNFFpBv,SET-FILL-POINTERFFpBvlSIMPLE-MAKE-ARRAYFFBFFB FFB FFBFFMAKE-HASH-TABLEFFBFF ÀEQUALFB FFBFFBF>FF:F!@B@E@ABAB4AB@B@BcB"A`B"@@BcB"A`B#F;F FBFART-16BFBFCART-Q-LISTFBF pB AREAF pB SIZEF pB TESTFBFBFBBOB1D pBvINITIALIZE-RESOURCEDB:BDB:BDB:BDB:BDB:BDB:BDB:DB:FDB:BDB:BDB:B1DBDB:CCOMPILER-WARNINGS-CONTEXTBBFlag when compiler warnings are being saved for a higher level, like in MAKE-SYSTEM9ÃCOMPILER-WARNINGS-CONTEXT-BINDFFFF:Fj"@ CA C&A@BAC&@%B&@@BAB@BAF;FFDDCPRINT-FUNCTIONS-REFERENCED-BUT-NOT-DEFINEDFWHENF ÀPROGNF BF DDB)B-DBwBDB0BFÀLET-IFFDDNOTB)FBDBB0O>B.9ÂFUNCTION-REFERENCED-P<=FFASSOC-EQUALFFBF>FF:F EABAF;FFBwOAB?9CCOMPILATION-DEFINEFF:F C@C@@@A @A E@B@@@A  @Ah@@@AF@D;FF pB COMPILATION-DEFINEDFÂFDEFINE-FILE-PATHNAMEOFBB9COMPILATION-DEFINEDPFF:F C@C@@@A @A @@@@@A@A C@@@A @A A@B@A@BAG@DjD@D;FFDBpB lUNDEFINEDFBHOOBJ9CEXTRACT-DECLARATIONS-RECORD-MACROSFFFF:Fj"@ C$BAF;FFEXTRACT-DECLARATIONSFDDÂRECORD-MACROS-EXPANDEDB-FBDBBTOYBS1DBCERROR-WARNING-TYPEBHolds the WARNING-TYPE arg inside a WARN-ON-ERRORS.1DBCERROR-WARNING-ARGSBHolds the WARNING-FORMAT-STRING and WARNING-ARGS args inside a WARN-ON-ERRORS.1DBÁWARN-ON-ERRORSB-,T to enable the WARN-ON-ERRORS feature while compiling. NIL means get an error.1DBÂWARN-ON-ERRORS-STREAMBNon-NIL => this is stream that read errors are happening on.9BbFFFF:F#j"@ C@AfB@@@A @A Ab@jB C! C C! Ch@$B@A&@)BABAB*BAB@BAF;F FDDÀERRORDB:WARN-ON-ERRORS-CONDITION-HANDLERFÁCONDITION-BINDFLISTFB^FBZFBFDB:DBoBbB-DlContinue with compilation.DÀLAMBDADÀ&RESTÀIGNOREDÀTHROWDB:BbBFCONDITION-RESUME-IFFDB:BbFÀCATCHDBBnOBb9BpFFF AAB@B@B@B@A@A@ChA@B@A4h@@B@B@A @C"B@@@AO@A A@B@@@AO@Aj@@ AAB@Bj$@j&@@B@A8@A@B@A@ B8@A $@@@AL@A.TA B&@@@@@AL@A&A@B@@@A L@AhA@B&A$B@C@AjAj@@A4j@@B@B@B@B@A AAB@B@B@@@Ay@A"B@C@@@Ay@A A@B@C@@@Ay@A A@B@Cj@@@@@A@AhAjB@C@A@C@AjD;F"FBbFBbF~~&To debug this, recompile with ~S set to ~S.FvpB DEBUGGING-CONDITION-PFopB DANGEROUS-CONDITION-PFhPDL-OVERFLOWFcBbF`pB REPORT-STRINGF^l~AF]pB ERRORFZBZFVB^FRl~AFPBFNpB lNO-ACTIONFH~&Position of this error saved in ZWEI register ".".FBpBPOINTF5pB ,READ-BPF4pB ,SEND-IF-HANDLESF1BfF-BfF(BF&l~AF%BF$CREAD-ERRORFBFpB PROCEED-TYPE-PFPARSE-ERRORFB^F ~%Warning: FpBvOBJECT-WARNINGS-OBJECT-NAMEFCDEFAULT-CONS-AREAFBACKGROUND-CONS-AREAFpB ,CONDITION-NAMESOBp9B<=FFBFFBFFBFFB>F:F hE@A4j@@B@BAF;FFB^Fl~%<< ~A >>OB9ÂADD-OPTIMIZER-INTERNALFF:F A@ B"A$B@@@A @A A$A#CAB@B A@ B"A$B@@@A@A A"A%B@B@A D;FFCREWRITERSFBF COPTIMIZERSFBOB9ÂADD-REWRITER-INTERNALFF:F A@ B"A$B@@@A @A A$A#CAB@B A@ B"A$B@@@A@A A"A%B@B@A D;FFBFBF BFBOB9ÁADD-OPTIMIZERFFFF:Fj"@ C@ApB@@@A @A Af@jB C! C C%B&BAF;FFB:FB:F BDBBOB1DBDB:BDB:OBSOLETEDB:ÁSTYLE-CHECKER1DBDB:BDÁSTRING-APPENDlis an obsolete function; use defoptimzer or defrewriteDB:B9DEFOPTIMIZERFFFF:F.j"@ C@ApB@@@A @A Af@jB C! C C! C(@@@A @A*@@@A@AAF'B$BAF$@(@$@ABAB+B'B$B@BAF;F F*B:F(B:F'BF#DBF!FUNCTION-PARENTF BFÀDEFUNFB5FB:FB:FBFOptimizer must accept at least one argumentDBBOB9CDEFREWRITEFFFF:F.j"@ C@ApB@@@A @A Af@jB C! C C! C(@@@A @A*@@@A@AAF'B$BAF$@(@$@ABAB+B'B$B@BAF;F F*B:F(B:F'BF#DBF!BF BFBFB5FB:FB:FBFlOptimizer must accept at least on argumentDBBOB9DEFCOMPILER-SYNONYMFFFF:Fj"@ C@ApB@@@A  @A C@ApB@@@A@A Af@fB C! C$A&BAC$@'B@BAF;FFDDBmFORMFB:FCONSFDBF-TO-FBDBBOB1DBÀ*VARS*BList of variable descriptors of currently lexically visible variables.1DBC*ALLVARS*B,List of variable descriptors of all variables used within this function.1DBC*FREEVARS*BList of all special variables references free.1DB*VARIABLES-USED-IN-LEXICAL-CLOSURES*1DBC*ARG-MAP*1DB*LOCAL-MAP*1DBC*BASE-STACK-SLOTS*1DBÁ*STACK-SLOTS*1DBÁ*OPEN-FRAMES*1DB*GENSYMBOL-COUNTER*9CGENSYMBOLFF:F3hn@(j @AC $@j&@ % C&C@@@A @A&C@@@A@A&A"@j@ ~ B@A &C@A"B$ C$@@@A @A @@@A#@A-$@A G"B@B@C@B@A"@j@ ~ B"CAG;FF/B`F-pB RADIXF+pB STREAMF(B F%B FB`FB"FB$O B1DBCMULTIPLE-VALUES-OPEN-FRAMEDMULTIPLE-VALUESCOPEN-FRAMEpBvDEFSTRUCT-SLOT9B%<=FFAR-1F>FF:F EgF;O.B%1DBÂMULTIPLE-VALUES-VALUESDB&ÀVALUESB*9B/<=FFB-F>FF:F EcF;O4B/1DBDB:B&DB:DpBvONEpB NAMED-ARRAYBDD B0BBB-BB/,A list of destinations.BBD B'FBBB-BB%An OPEN-FRAME that this destination activates.BBB-DDMAKE-MULTIPLE-VALUESBBFBB&BBBMULTIPLE-VALUES-B-BBBCOPY-MULTIPLE-VALUESDB-ÂPRINT-MULTIPLE-VALUESBÀART-QDB:pBvDEFSTRUCT-DESCRIPTION1DBDB:BADB:B&DB:pBvDEFSTRUCT-NAME1DCDEFF-MACROBADB:DBpBvDEFSTRUCT-EXPAND-CONS-MACRO9BG<=FF AS-1FF B-FFB`FFB-FFMAKE-ARRAY-INTO-NAMED-STRUCTUREFpBvSIMPLE-MAKE-ARRAY-1D-Q-SHORTF>FF:FqC"A@B AbB@A"@bB AfB@A"@fB@A"D;FFB&OdBG1DRECORD-SOURCE-FILE-NAMEDB:B&DB:CDEFSTRUCT1DpBvlDEFSELECT-INTERNALDB:DBB&ÂNAMED-STRUCTURE-INVOKEDB:BzDB:DpB lPRINT-SELFpB ,WHICH-OPERATIONSpB OPERATION-HANDLED-PBpB ,GET-HANDLER-FORB-9DpB SELECT-METHODBnBrFFFF:F j(@ @B@A@A#G"E$@'F;FFÁPRINT-READABLYOB9BHFF:F A"@j@jB"A AbB AcB AfB AfB@@@A@A AfB@AcBj B A"@jB@A D;FFlMultiple-values: ~:[None~*~;~{~S~^, ~}~]~:[~;; Frame: ~S~]OBH1DBOPEN-FRAME-IDESTDB'ÀIDESTB*9B<=FFB-F>FF:F EwF;OB1DBOPEN-FRAME-PDESTDB'ÀPDESTB*9B<=FFB-F>FF:F EuF;OB1DBOPEN-FRAME-CLEANUP-GENERATORDB'CCLEANUP-GENERATORB*9B<=FFB-F>FF:F EsF;OB1DBCOPEN-FRAME-THERE-PDB'THERE-PB*9B<=FFB-F>FF:F EqF;OB1DBCOPEN-FRAME-TAIL-PDB'ÀTAIL-PB*9B<=FFB-F>FF:F EgF;OB1DBOPEN-FRAME-OPEN-INSTRUCTIONDB'OPEN-INSTRUCTIONB*9B<=FFB-F>FF:F EcF;OB1DBDB:B'DB:DB7B9BDD BBpBv%%DEFSTRUCT-EMPTY%%B-BBBBBD BFBBB-BBBBBD BFBBB-BBBBBD BFBBB-BBBBBD BFBBB-BBBBBD BFBBB-BBBBBB-DDMAKE-OPEN-FRAMEBBFBB'BBALTER-OPEN-FRAMEOPEN-FRAME-B-BBBCOPY-OPEN-FRAMEDB-PRINT-OPEN-FRAMEBBJDB:BN1DBDB:BDB:B'DB:BU1DBYBDB:B\1DBDB:BDB:B'DB:BU1DBYBDB:DBpBvDEFSTRUCT-EXPAND-ALTER-MACRO9B<=FF!B`FFB-FFB`FFB-FFB`FFB-FFB`FFB-FF B`FF B-FFB`FFB-FFBaFBcF>FF:F$yC"A@B AbB@A"@bB AfB@A"@fB ApB@A"@pB ArB@A"@rB AtB@A"@tB AvB@A"@vB@A"D;FFB'OB1DBeDB:B'Bh1DBlDB:DBB'BmDB:BzDB:DBrBtBvBBxB-9DB~BBrFFFF:F j(@ @B@A@A#G"E$@'F;FFBOB9BFF:F' A"@h@hB"A AbB AqB AfB AtB@@@A @A AwB@ @ AtB@@@A @A @ @ AvB@@@A !@A@B A"@jB@A D;FF l??Fl??F~A ~:[(Unfinished) ~]~:[~;(Tail-called) ~]~:[~;~A~A~]OB9WITH-OPEN-FRAMEFFFFhFZj"@ C@ApB@@@A @A Af@jB C CA C C@ C CA C C! C@ BA B&4@*6@(8@4@@@A@A @A @ B8@@@A$@A&@A @B6@@@A*@A,@A A B0A4A8@7B(@@@A6@A@A8j@ 8C@A&@@@A<@A=j@ 5C*@@@AA@ABj@ 6C,B@BAC2A$BAC*A2@2B @BAB2B.B@BAF;FFUCOUTI-FOR-KFRDpB lCLEANUP-GENERATORDFUNCTIONCLEANUP-FUNFPTAIL-OPEN-PFOpB TAIL-PFMpB ,OPEN-INSTRUCTIONFLBFKpB lNEW-FRAMEFIÁOPENING-FRAMESFELET*F,BF*DESTINATIONF$,DISCARDPFlOPEN-FRAMEF,OPEN-INSTRUCTIONFCLEANUP-FUNDBBO B9BBjFF=BjFF8BoFF7BoFF/BlFF.BjFF-BlFF)BoFF(BqFF!BjFF BqFFBoFFBqFFBqFFBlFFBFFBFFBFF BjFF BlFF BmFF BxFFB{FFBzF>FFFFFBj"@ C@AfB@@@A @A Ab@jB C! C CA B@ BA B*A@B@A,A%B.A&B$A.@%BABAB.@/B,B.@ABAB)B.@*BAB*@j@%B@B@B@BAF;FF:CLEAN-UP-OPEN-FRAMESF9DFSIGNALHow does this happen?F6B F5BF4DB;C*DROPTHRU*F3CORF2ÀUNLESSF0B4F,DB F*PUSHF'BF&BF$B4F#B5F"BFBFDB FBFlNEW-FRAMEFORIGINAL-DESTINATIONF ORIGINAL-OPEN-FRAMESDBB OB9ÂDISCARDING-OPEN-FRAMESFFFF:Fj"@ C@AfB@@@A @A Ab@jB C! C C$@&B)F;FFpB ,DISCARDFBFDDB B DBBF BDBBO$B1DB*LOCAL-FUNCTION-MAP*1DBCVAR-PLISTDVARÀPLISTB*9B(<=FFB-F>FF:F E AF;O.B(1DBVAR-OVERLAP-VARDB)OVERLAP-VARB*9B/<=FFB-F>FF:F EF;O4B/1DBVAR-DECLARATIONSDB)DECLARATIONSB*9B5<=FFB-F>FF:F E}F;O:B51DBVAR-MISCDB)MISCB*9B;<=FFB-F>FF:F E{F;O@B;1DBVAR-EVALDB)EVALB*9BA<=FFB-F>FF:F EyF;OFBA1DBVAR-INITDB)INITB*9BG<=FFB-F>FF:F EwF;OLBG1DBVAR-LAP-ADDRESSDB)LAP-ADDRESSB*9BM<=FFB-F>FF:F EuF;ORBM1DBÁVAR-USE-COUNTDB)CUSE-COUNTB*9BS<=FFB-F>FF:F EsF;OXBS1DBVAR-TYPEDB)TYPEB*9BY<=FFB-F>FF:F EqF;O^BY1DBVAR-KINDDB)KINDB*9B_<=FFB-F>FF:F EgF;OdB_1DBVAR-NAMEDB)NAMEB*9Be<=FFB-F>FF:F EcF;OjBe1DBDB:B)DB:DB7B9BD D BfBBB-BBe,The variable's name.If this is the gensym variable that is used to implementa local (FLET) function, then the name has a LOCAL-FUNCTION-NAME propertywhich is the symbol actually defined as a function in the FLET.BBD B`FBBB-BB_,One of FEF-ARG-REQ, FEF-ARG-OPT, FEF-ARG-REST, FEF-ARG-AUX, FEF-ARG-INTERNAL-AUX Can also be FEF-ARG-FREE for the entry pushed by a local SPECIAL declaration.BBD BZFBBB-BBY,Either FEF-LOCAL or FEF-SPECIAL.BBD BTFBB-BBSlNumber of times variable is used, not counting binding and initialization.BBD BNFBBB-BBM,(ARG n) for an argument, (LOCAL n) for a local, (SPECIAL symbol) for a special variable.BBD BHFBBB-BBG,Describes how the variable should be initted on binding.BBD BBFBBB-BBA,FEF-QT-QT for "E arg, otherwise FEF-QT-EVAL.BBD B<FBBB-BB;List of additional FEF-... symbols serving as flags about this variable.FEF-ARG-FUNCTIONAL means it is an &FUNCTIONAL arg.FEF-ARG-SPECIFIED-FLAG means it is the specified-p variable of an optional arg.FEF-ARG-USED-IN-LEXICAL-CLOSURES means that lexical closures refer free to this variable.FEF-ARG-OVERLAPPED means this is the OVERLAP-VAR of some other VAR.Lap will add the values of these symbols into the ADL word for the variable.BBD B6FBBB-BB5lDeclarations pertaining to this variable.BBD B0F BBB-BB/lAnother VAR, the one whose slot this one shares;or NIL if there is none.BBD B*F BBB-BB(other info!BBB-DDMAKE-VARBBF BB)BBBVAR-B-BBBCOPY-VARDB-CPRINT-VARBBJDB:BN1DBDB:BDB:B)DB:BU1DBYBDB:B\9B<=FF=B`FF9B-FF6B`FF3B-FF1B`FF.B-FF,B`FF)B-FF'B`FF$B-FF"B`FFB-FFB`FFB-FFB`FFB-FFB`FFB-FFB`FF B-FF B`FFB-FFBaFFBcF>FFF@ AB"A@B AbB@A"@bB AfB@A"@fB ApB@A"@pB ArB@A"@rB AtB@A"@tB AvB@A"@vB AxB@A"@xB AzB@A"@zB A|B@A"@|B A~B@A"@~B A @B@A"@ @B@A"D;FFB)OB1DBeDB:B)Bh1DBlDB:DBB)BmDB:BzDB:DBrBtBvBBxB-9DB~BBrFFFF:F j(@ @B@A@A#G"E$@'F;FFBOB9B<=FF BFFÀPRIN1FFB-FFBF>FF:F  A"@h@hB AbB@A"B A"@jB@A D;OB1DBÂFEF-ARG-SPECIFIED-FLAG1DBFEF-ARG-USED-IN-LEXICAL-CLOSURES1DBCFEF-ARG-OVERLAPPED1DBCNEW-VAR-OPEN-FRAMEDNEW-VARB'B*9B<=FFB-F>FF:F EgF;OB1DBNEW-VAR-VARDBB)B*9B<=FFB-F>FF:F EcF;OB1DBDB:BDB:DB7B9BDD B)BBB-BBThe VAR struct this destination will create.BBD B'FBBB-BBThe OPEN-FRAME struct this destination will activate.BBB-DDMAKE-NEW-VARBBFBBBBBNEW-VAR-B-BBBCOPY-NEW-VARDB-ÁPRINT-NEW-VARBBJDB:BN1DBDB:BDB:BDB:BU1DBYBDB:B\9B<=FF B`FF B-FFB`FFB-FFBaFBcF>FF:FqC"A@B AbB@A"@bB AfB@A"@fB@A"D;FFBOB1DBeDB:BBh1DBlDB:DBBBmDB:BzDB:DBrBtBvBBxB-9DB~BBrFFFF:F j(@ @B@A@A#G"E$@'F;FFBOB9BFF:F A"@h@hB AbB@@@A@A AbB@AbB@A"B@A "B A"@jB@A D;FF(none)OB1DB*GOTAG-ENVIRONMENT*B,Alist of GOTAGs for each lexically visible tag meaningful to GO.1DBCALLGOTAGSBlList of all tags (actual symbols, not GOTAGs) defined within the current function.1DBGOTAG-USED-IN-LEXICAL-CLOSURES-FLAGDÀGOTAGÃUSED-IN-LEXICAL-CLOSURES-FLAGB*9B<=FFB-F>FF:F EuF;OB1DBÁGOTAG-PROGDESCDBPROGDESCB*9B<=FFB-F>FF:F EsF;O B1DBGOTAG-PDL-LEVELDBCPDL-LEVELB*9B <=FFB-F>FF:F EqF;OB 1DBÁGOTAG-LAP-TAGDBLAP-TAGB*9B<=FFB-F>FF:F EgF;OB1DBÁGOTAG-PROG-TAGDBPROG-TAGB*9B<=FFB-F>FF:F EcF;OB1DBDB:BDB:DB7B9BDD BBBB-BBActual tag name that the user used. For rettags of blocks, this is a gensym.BBD BFBBB-BBTag name to use for LAP. May be the same as GOTAG-PROG-TAG.BBD BFBBB-BB ,Pdl level we are supposed to have at that point in the code.Used to tell how many words to pop when you branch.BBD BFBBB-BB,Pointer to the element of PROGDESCS for the BLOCK or TAGBODYthat generated this GOTAG.BBD BFBBB-BBT if this tag used in internal lambdas.The PROGDESC-USED-IN-LEXICAL-CLOSURES-FLAG of our GOTAG-PROGDESCwill also be non-NIL in that case.BBB-DDMAKE-GOTAG-INTERNALBBFBBBBBÀGOTAG-B-BBBBBBBJDB:BN1DBDB:B0DB:BDB:BU1DBYB0DB:B\1DBeDB:BBh9CMAKE-GOTAGFFFF:Fj"@ C@AtB@@@A @A A`@rB C! C C CA C$@&@ ( @+F;FFpB ,PROGDESCFpB lPDL-LEVELFpB ,LAP-TAGFpB ,PROG-TAGFB0DBBGOPBF1DBÂ*PROGDESC-ENVIRONMENT*BlThe elements describe the active BLOCK, LET and TAGBODY constructs, innermost first.Each element is a PROGDESC structure.1DBPROGDESC-OPEN-FRAMESDBOPEN-FRAMESB*9BU<=FFB-F>FF:F E AF;OZBU1DBÄPROGDESC-USED-IN-LEXICAL-CLOSURES-FLAGDBBB*9B[<=FFB-F>FF:F EF;O_B[1DBPROGDESC-EXIT-LEXICAL-CLOSURE-COUNTDBCEXIT-LEXICAL-CLOSURE-COUNTB*9B`<=FFB-F>FF:F E}F;OeB`1DBPROGDESC-ENTRY-LEXICAL-CLOSURE-COUNTDBENTRY-LEXICAL-CLOSURE-COUNTB*9Bf<=FFB-F>FF:F E{F;OkBf1DBÁPROGDESC-VARSDBVARSB*9Bl<=FFB-F>FF:F EyF;OqBl1DBPROGDESC-NBINDSDBÀNBINDSB*9Br<=FFB-F>FF:F EwF;OwBr1DBCPROGDESC-PDL-LEVELDBBB*9Bx<=FFB-F>FF:F EuF;O|Bx1DBPROGDESC-M-V-TARGETDBCM-V-TARGETB*9B}<=FFB-F>FF:F EsF;OB}1DBÁPROGDESC-IDESTDBBB*9B<=FFB-F>FF:F EqF;OB1DBPROGDESC-RETTAGDBÀRETTAGB*9B<=FFB-F>FF:F EgF;OB1DBÁPROGDESC-NAMEDBBfB*9B<=FFB-F>FF:F EcF;OB1DBDB:BDB:DB7B9BD D BfBBB-BBlName of this block, or (TAGBODY) or (LET).(TAGBODY) is used for PROGDESCs for TAGBODY forms,(LET) is used for PROGDESCs for variable binding forms,a symbol is used for BLOCKs.BBD BFBBB-BBTag to branch to to exit this construct. Used for blocks only.The rettag is followed, if necessary, by code to transfer theblock's value from its IDEST to the actual destination.BBD BFBBB-BB,Destination to compile contents of block with, on pass 2.Used for blocks only.BBD B~FBBB-BB}!Value of *M-V-TARGET* around this block.Says whether the block's caller wants multiple values. Used for blocks only.If it is NIL, only one value is wanted.If it is MULTIPLE-VALUE-LIST, then the block should reallyreturn the list of the values that RETURN wants to return.If it is THROW or RETURN, the block should do the hairy thingsto pass all but the last value to the frame that is going to get them,then return the last value on the stack.If it is a number, the block should return that many values on the stack.On pass 1, this is *P1VALUE* on entry to the block.BBD BFBBB-BBx,The PDL-LEVEL is the pdl level at entry to the construct,which is also the level in between statements in the construct.Used in all PROGDESCs, for blocks, binding forms and TAGBODYs.BBD BsFBBB-BBrlNumber of special bindings to unbind at exit from the construct.Can also be a list containing the number to unbind, which meansthat in addition an unknown number of %BINDs will be doneand therefore UNBIND-TO-INDEX must be used to unbind themto a specpdl pointer saved at the beginning of the construct.BBD BmFBBB-BBlValue of *VARS* at entry to this block. Used only in blocks.BBD BgFBBB-BBf,Unused.BBD BaFBBB-BB`,Unused.BBD BF BBB-BB[,For blocks, non-NIL if any lexical closure within this block tries to RETURN from it.The actual value is a list which is used as a catch tag to implement such RETURNs.BBD BVF BB B-BBUOpen frames at entry to the construct, which is also the level in betweenstatements in the construct. Used in all PROGDESCs, for blocks, binding forms, andTAGBODYs. This is the K's generalization of PDL-LEVEL.BBB-DDÁMAKE-PROGDESCBBF BBBBBCPROGDESC-B-BBBÁCOPY-PROGDESCDB-ÁPRINT-PROGDESCBBJDB:BN1DBDB:BDB:BDB:BU1DBYBDB:B\9B<=FF=B`FF9B-FF6B`FF3B-FF1B`FF.B-FF,B`FF)B-FF'B`FF$B-FF"B`FFB-FFB`FFB-FFB`FFB-FFB`FFB-FFB`FF B-FF B`FFB-FFBaFFBcF>FFF@ AB"A@B AbB@A"@bB AfB@A"@fB ApB@A"@pB ArB@A"@rB AtB@A"@tB AvB@A"@vB AxB@A"@xB AzB@A"@zB A|B@A"@|B A~B@A"@~B A @B@A"@ @B@A"D;FFBOB1DpBvlSET-DOCUMENTATIONDB:BDB:CSTRUCTUREDescribes one element of PROGDESCS.1DBeDB:BBh1DBlDB:DBBBmDB:BzDB:DBrBtBvBBxB-9DB~BBrFFFF:F j(@ @B@A@A#G"E$@'F;FFBOB9B<=FFBFF BFF B-FF B-FFB-FFBF>FF:F A"@h@hB"A AbB AqB A @B@B A"@jB@A D;FFl~S  ~A; Frame level = ~SOB1DBÁCOMPILER-QUEUEBList of pending functions to be compiled inside QC-TRANSLATE-FUNCTION.Each element is a COMPILER-QUEUE-ENTRY.1DBCCOMPILER-QUEUE-ENTRY-FUNCTION-ENVIRONMENTDCOMPILER-QUEUE-ENTRYFUNCTION-ENVIRONMENTB*9B<=FFB-F>FF:F E}F;OB1DBCOMPILER-QUEUE-ENTRY-GOTAGSDBÀGOTAGSB*9B<=FFB-F>FF:F E{F;OB1DBÃCOMPILER-QUEUE-ENTRY-PROGDESCSDBCPROGDESCSB*9B<=FFB-F>FF:F EyF;OB1DBCOMPILER-QUEUE-ENTRY-LOCAL-FUNCTIONSDBLOCAL-FUNCTIONSB*9B<=FFB-F>FF:F EwF;OB1DBÃCOMPILER-QUEUE-ENTRY-VARIABLESDBCVARIABLESB*9B<=FFB-F>FF:F EuF;OB1DBCCOMPILER-QUEUE-ENTRY-DECLARATIONSDBB6B*9B<=FFB-F>FF:F EsF;O B1DBCOMPILER-QUEUE-ENTRY-DEFINITIONDBCDEFINITIONB*9B <=FFB-F>FF:F EqF;OB 1DBCCOMPILER-QUEUE-ENTRY-FUNCTION-NAMEDBÁFUNCTION-NAMEB*9B<=FFB-F>FF:F EgF;OB1DBCCOMPILER-QUEUE-ENTRY-FUNCTION-SPECDBÁFUNCTION-SPECB*9B<=FFB-F>FF:F EcF;OB1DBDB:BDB:DB7B9BD D BBBB-BBlFunction spec to define once compilation is done.BBD BFBBB-BBFunction spec to record in the compiled function as its name.BBD B FBBB-BB Lambda expression to compile.BBD B6FBBB-BB,Declarations in effect from containing function.BBD BFBBB-BBVariables accessible through containing function.This becomes the value of *VARS*.BBD BFBBB-BBLexical functions inherited from containing function.BBD BFBBB-BB,PROGDESCS inherited from containing function.This becomes the value of *PROGDESC-ENVIRONMENT*.BBD BFBBB-BBlGOTAGS from containing function that we can go to.This becomes the value of *GOTAG-ENVIRONMENT*.BBD BFBBB-BBlStandard environment function environment frame containing local macros and functionswe are inheriting. This becomes the value of *FUNCTION-ENVIRONMENT*BBB-DDCMAKE-COMPILER-QUEUE-ENTRYBBF BBBBBÂCOMPILER-QUEUE-ENTRY-B-BBBBBBBJDB:BN1DBDB:B:DB:BDB:BU1DBYB:DB:B\1DBDB:BB,Describes one element of COMPILER-QUEUE.1DBeDB:BBh1DB*OUTER-CONTEXT-VARS*B,Intended lexical variable environment of the function being compiled.For a top-level function in a file, it is NIL.In general it is a list of *VARS* lists, to be scanned in the order listed.Each element corresponds to one environment level,and the position of a variable home within the elementis its index within that level.The level number and the index within the level are the two quantitiesthat are passed to %LOCATE-IN-HIGHER-CONTEXT.1DB*OUTER-CONTEXT-LOCAL-FUNCTIONS*BUsed to initialize *LOCAL-FUNCTIONS* for compilation of one function.1DB*OUTER-CONTEXT-FUNCTION-ENVIRONMENT*BlUsed to initialize *FUNCTION-ENVIRONMENT* for compilation of one function.1DB*OUTER-CONTEXT-PROGDESC-ENVIRONMENT*BlUsed to initialize *PROGDESC-ENVIRONMENT* for compilation of one function.1DBC*OUTER-CONTEXT-GOTAG-ENVIRONMENT*B,Used to initialize *GOTAG-ENVIRONMENT* for compilation of one function.1DBÂ*FUNCTION-ENVIRONMENT*B,List of frames describing local macro and function definitions.The format of this object is the same as that of SI::*INTERPRETER-FUNCTION-ENVIRONMENT*.1DBC*LOCAL-FUNCTIONS*B,Alist of elements (local-function-name vars-entry function-definition)It records, for each local function name (defined by FLET or LABELS)the local variable in which the function definition actually lives.9FSYMEVAL-IN-FUNCTION-ENVIRONMENTFFFF:FAB@A " C E$@kF;FBhOrBp1DBOPEN-CODE-MAP-SWITCHB-lThis, if T, causes MAP, etc. to be open-coded. It is normally T.1DBCALL-SPECIAL-SWITCHB,If T makes all variabes special.1DBÃINHIBIT-STYLE-WARNINGS-SWITCHB,If T prevents warnings about a lot of stylistic losses.1DpBv,FASL-RECORD-FILE-MACROS-EXPANDEDDB:DDCWITH-LISTDBBDBB DBUB-DBDBe.=DB;$@DpLISPlIFu}DpBvXR-BQ-APPENDkDBDBDBDBDÂPRINTING-RANDOM-OBJECT46)DB/;( DB%;$ DB4DBDÂWITH-OUTPUT-TO-STRINGwiDÀDOLIST5DTYPECASEZDpBLISTPsDÀPSETQ+FDINCF9QDBXDÀCONSPNDÂMAKE-EQUAL-HASH-TABLErFDBJDCASE:-DpBvlXR-BQ-LIST~DpBvXR-BQ-LIST*B+