3 <ENTRY NODE-COMPLAIN NODE-PRINT>
7 <DEFINE NODE-COMPLAIN (N "OPTIONAL" (MAX 80) "AUX" (P .N) TEM)
8 #DECL ((N) NODE (MAX) FIX (P) <OR VECTOR NODE>)
10 <AND <EMPTY? .OPP> <RETURN>>
11 <OR <NODE-PRINT .OPP .N .MAX T> <RETURN>>
12 <OR <TYPE? <SET TEM <PARENT <SET P .OPP>>> NODE>
14 <OR <MEMQ .OPP <KIDS <SET OPP .TEM>>>
16 <NODE-PRINT .P .N .MAX>>
19 "OPTIONAL" (LOSER <>) (MAX 80) (FLAT <>)
22 <OPEN "PRINT" "INT:" <COND (.FLAT ,NF) (ELSE ,NP)>>)
24 #DECL ((MAX) <SPECIAL FIX> (NCHS) <SPECIAL ANY>
25 (OUTCHAN OUTC) <SPECIAL CHANNEL>
26 (LOSER) <SPECIAL <OR FALSE NODE>>)
27 <PUT .OUTCHAN 13 <- <13 .OUTC> 2>>
29 #DECL ((NACT) <SPECIAL ACTIVATION>)
32 <OR .FLAT <PRINC " ..." .OUTC>>
34 <OR .FLAT <TERPRI .OUTC>>
39 <COND (<L? <SET MAX <- .MAX 1>> 0> <RETURN T .NACT>)>
40 <SET NCHS <+ .NCHS 1>>>
42 <DEFINE NP (CH) #DECL ((CH) CHARACTER)
43 <COND (<L? <SET MAX <- .MAX 1>> 0> <RETURN T .NACT>)>
46 <DEFINE NPRINT (N "AUX" (COD <NODE-TYPE .N>) TC (FLG <==? .N .LOSER>))
47 #DECL ((N) NODE (COD TC) FIX)
48 <AND .FLG <PRINC " **** ">>
49 <COND (<OR <==? .COD ,FUNCTION-CODE> <==? .COD ,MFCN-CODE>>
51 <PRNARGL <BINDING-STRUCTURE .N> <RESULT-TYPE .N> <>>
55 (<==? .COD ,PROG-CODE>
57 <PRIN1 <NODE-NAME .N>>
59 <PRNARGL <BINDING-STRUCTURE .N> <RESULT-TYPE .N> T>
63 (<==? .COD ,MFIRST-CODE>
64 <PRINC <NTH ,MAP-SPEC-PRINT <NODE-SUBR .N>>>)
65 (<==? .COD ,MPSBR-CODE>
67 <OR <AND <EMPTY? <KIDS .N>> some-subr>
68 <PRIN1 <NODE-NAME <1 <KIDS .N>>>>>)
69 (<==? .COD ,COPY-CODE>
72 <LENGTH <MEMQ <NODE-NAME .N>
73 '![UVECTOR VECTOR LIST!]>>>>>
75 <PRINC <NTH ,EN-CHRS .TC>>)
76 (<OR <==? .COD ,SEG-CODE> <==? .COD ,SEGMENT-CODE>>)
77 (<==? .COD ,BRANCH-CODE>
80 <COND (<NOT <EMPTY? <CLAUSES .N>>>
82 <SEQ-PRINT <CLAUSES .N>>)>
84 (<==? .COD ,QUOTE-CODE>
85 <AND <TYPE? <NODE-NAME .N> VECTOR UVECTOR LIST FORM>
87 <PRIN1 <NODE-NAME .N>>)
88 (<OR <==? .COD ,SET-CODE> <==? .COD ,FSET-CODE>>
95 <AND <==? .COD ,SUBR-CODE>
96 <OR <AND <==? <NODE-SUBR .N> ,LVAL>
97 <SET COD ,FLVAL-CODE>>
98 <AND <==? <NODE-SUBR .N> ,GVAL>
99 <SET COD ,FGVAL-CODE>>>>>
100 <COND (<OR <==? .COD ,LVAL-CODE> <==? .COD ,FLVAL-CODE>>
103 <COND (<TYPE? <NODE-NAME .N> SYMTAB>
104 <PRIN1 <NAME-SYM <NODE-NAME .N>>>)
105 (ELSE <OR <AND <EMPTY? <KIDS .N>> some-atom>
106 <NPRINT <1 <KIDS .N>>>>)>)
107 (<==? <NODE-NAME .N> INTH>
109 <OR <EMPTY? <KIDS .N>> <NPRINT <2 <KIDS .N>>>>
111 <OR <EMPTY? <KIDS .N>> <NPRINT <1 <KIDS .N>>>>
115 <PRINC <NODE-NAME .N>>
117 <SEQ-PRINT <KIDS .N>>
119 <AND .FLG <PRINC " **** ">>>
121 <SETG MAP-SPEC-PRINT [",+" ",-" ",*" ",/" ",LIST"]>
124 ![,LVAL-CODE ,FLVAL-CODE ,GVAL-CODE ,FGVAL-CODE!]>
126 <SETG ST-CHRS ["(" "[" "!["]>
128 <SETG EN-CHRS [")" "]" "!]"]>
130 <DEFINE SEQ-PRINT (L) #DECL ((L) <LIST [REST NODE]>)
131 <COND (<NOT <EMPTY? .L>>
133 <COND (<NOT <EMPTY? <SET L <REST .L>>>>
141 <DEFINE PRNARGL (B R "OPTIONAL" (INAUX <>) "AUX" (INOPT <>) (DC ()) (FIRST T))
142 #DECL ((B) <LIST [REST SYMTAB]> (DC) LIST)
145 <FUNCTION (SYM "AUX" (COD <CODE-SYM .SYM>))
146 #DECL ((SYM) SYMTAB (COD) FIX)
147 <OR .FIRST <PRINC " ">>
151 <PRIN1 <NAME-SYM .SYM>>)
158 <PRIN1 <NAME-SYM .SYM>>
160 <NPRINT <INIT-SYM .SYM>>
162 (ELSE <PRIN1 <NAME-SYM .SYM>>)>)
165 <PRIN1 <NAME-SYM .SYM>>)
168 <PRIN1 <NAME-SYM .SYM>>)
172 <PRINC "\"OPTIONAL\" ">)>
175 <AND <==? .COD 6> <PRINC "'">>
176 <PRIN1 <NAME-SYM .SYM>>
178 <NPRINT <INIT-SYM .SYM>>
181 <AND <==? .COD 8> <PRINC "'">>
182 <PRIN1 <NAME-SYM .SYM>>)>)
185 <PRIN1 <NAME-SYM .SYM>>)
188 <PRIN1 <NAME-SYM .SYM>>)
190 <AND <==? .COD 12> <PRINC "'">>
191 <PRIN1 <NAME-SYM .SYM>>)>
192 <COND (<N==? <1 <DECL-SYM .SYM>> ANY>
198 <COND (<AND .R <N==? .R ANY>> <SET DC ('(VALUE) .R !.DC)>)>
200 <COND (<NOT <EMPTY? .DC>> <PRINC " "> <PRIN1 <CHTYPE .DC DECL>>)>>