Commit | Line | Data |
---|---|---|
f9a8037d C |
1 | |
2 | ||
3 | ||
4 | ||
5 | ||
6 | ||
7 | ||
8 | APPENDIX B | |
9 | ||
10 | ||
11 | Special Symbols | |
12 | ||
13 | ||
14 | ||
15 | ||
16 | The values of these symbols have a predefined meaning. | |
17 | Some values are counters while others are simply flags whose | |
18 | value the user can change to affect the operation of lisp | |
19 | system. In all cases, only the value cell of the symbol is | |
20 | important, the function cell is not. The value of some of | |
21 | the symbols (like ER%misc) are functions - what this means | |
22 | is that the value cell of those symbols either contains a | |
23 | lambda expression, a binary object, or symbol with a func- | |
24 | tion binding. | |
25 | ||
26 | The values of the special symbols are: | |
27 | ||
28 | $gccount$ - The number of garbage collections which have | |
29 | occurred. | |
30 | ||
31 | $gcprint - If bound to a non nil value, then after each | |
32 | garbage collection and subsequent storage allocation a | |
33 | summary of storage allocation will be printed. | |
34 | ||
35 | $ldprint - If bound to a non nil value, then during each | |
36 | _\bf_\ba_\bs_\bl or _\bc_\bf_\ba_\bs_\bl a diagnostic message will be printed. | |
37 | ||
38 | ER%all - The function which is the error handler for all | |
39 | errors (see 10) | |
40 | ||
41 | ER%brk - The function which is the handler for the error | |
42 | signal generated by the evaluation of the _\bb_\br_\be_\ba_\bk func- | |
43 | tion (see 10). | |
44 | ||
45 | ER%err - The function which is the handler for the error | |
46 | signal generated by the evaluation of the _\be_\br_\br function | |
47 | (see 10). | |
48 | ||
49 | ER%misc - The function which is the handler of the error | |
50 | signal generated by one of the unclassified errors (see | |
51 | 10). Most errors are unclassified at this point. | |
52 | ||
53 | ER%tpl - The function which is the handler to be called when | |
54 | an error has occurred which has not been handled (see | |
55 | 10). | |
56 | ||
57 | ER%undef - The function which is the handler for the error | |
58 | signal generated when a call to an undefined function | |
59 | is made. | |
60 | \e9 | |
61 | ||
62 | \e9 B-1 | |
63 | ||
64 | ||
65 | ||
66 | ||
67 | ||
68 | ||
69 | ||
70 | B-2 | |
71 | ||
72 | ||
73 | ^w - When bound to a non nil value this will prevent output | |
74 | to the standard output port (poport) from reaching the | |
75 | standard output (usually a terminal). Note that ^w is | |
76 | a two character symbol and should not be confused with | |
77 | ^W which is how we would denote control-w. The value | |
78 | of ^w is checked when the standard output buffer is | |
79 | flushed which occurs after a _\bt_\be_\br_\bp_\br, _\bd_\br_\ba_\bi_\bn or when the | |
80 | buffer overflows. This is most useful in conjunction | |
81 | with ptport described below. System error handlers | |
82 | rebind ^w to nil when they are invoked to assure that | |
83 | error messages are not lost. (This was introduced for | |
84 | Maclisp compatibility). | |
85 | ||
86 | defmacro-for-compiling - The has an effect during compila- | |
87 | tion. If non-nil it causes macros defined by defmacro | |
88 | to be compiled and included in the object file. | |
89 | ||
90 | environment - The UNIX environment in assoc list form. | |
91 | ||
92 | errlist - When a _\br_\be_\bs_\be_\bt is done, the value of errlist is | |
93 | saved away and control is thrown to the top level. | |
94 | _\bE_\bv_\ba_\bl is then mapped over the saved away value of this | |
95 | list. | |
96 | ||
97 | errport - This port is initially bound to the standard error | |
98 | file. | |
99 | ||
100 | evalhook - The value of this symbol, if bound, is the name | |
101 | of a function to handle evalhook traps (see 14.4) | |
102 | ||
103 | float-format - The value of this symbol is a string which is | |
104 | the format to be used by print to print flonums. See | |
105 | the documentation on the UNIX function printf for a | |
106 | list of allowable formats. | |
107 | ||
108 | funcallhook - The value of this symbol, if bound, is the | |
109 | name of a function to handle funcallhook traps (see | |
110 | 14.4). | |
111 | ||
112 | gcdisable - If non nil, then garbage collections will not be | |
113 | done automatically when a collectable data type runs | |
114 | out. | |
115 | ||
116 | ibase - This is the input radix used by the lisp reader. It | |
117 | may be either eight or ten. Numbers followed by a | |
118 | decimal point are assumed to be decimal regardless of | |
119 | what ibase is. | |
120 | ||
121 | linel - The line length used by the pretty printer, pp. | |
122 | This should be used by _\bp_\br_\bi_\bn_\bt but it is not at this | |
123 | time. | |
124 | ||
125 | nil - This symbol represents the null list and thus can be | |
126 | ||
127 | ||
128 | Printed: July 21, 1983 | |
129 | ||
130 | ||
131 | ||
132 | ||
133 | ||
134 | ||
135 | ||
136 | B-3 | |
137 | ||
138 | ||
139 | written (). Its value is always nil. Any attempt to | |
140 | change the value will result in an error. | |
141 | ||
142 | piport - Initially bound to the standard input (usually the | |
143 | keyboard). A read with no arguments reads from piport. | |
144 | ||
145 | poport - Initially bound to the standard output (usually the | |
146 | terminal console). A print with no second argument | |
147 | writes to poport. See also: ^w and ptport. | |
148 | ||
149 | prinlength - If this is a positive fixnum, then the _\bp_\br_\bi_\bn_\bt | |
150 | function will print no more than prinlength elements of | |
151 | a list or hunk and further elements abbreviated as | |
152 | `...'. The initial value of prinlength is nil. | |
153 | ||
154 | prinlevel - If this is a positive fixnum, then the _\bp_\br_\bi_\bn_\bt | |
155 | function will print only prinlevel levels of nested | |
156 | lists or hunks. Lists below this level will be abbre- | |
157 | viated by `&' and hunks below this level will be abbre- | |
158 | viated by a `%'. The initial value of prinlevel is | |
159 | nil. | |
160 | ||
161 | ptport - Initially bound to nil. If bound to a port, then | |
162 | all output sent to the standard output will also be | |
163 | sent to this port as long as this port is not also the | |
164 | standard output (as this would cause a loop). Note | |
165 | that ptport will not get a copy of whatever is sent to | |
166 | poport if poport is not bound to the standard output. | |
167 | ||
168 | readtable - The value of this is the current readtable. It | |
169 | is an array but you should NOT try to change the value | |
170 | of the elements of the array using the array functions. | |
171 | This is because the readtable is an array of bytes and | |
172 | the smallest unit the array functions work with is a | |
173 | full word (4 bytes). You can use _\bs_\be_\bt_\bs_\by_\bn_\bt_\ba_\bx to change | |
174 | the values and (_\bs_\bt_\ba_\bt_\bu_\bs _\bs_\by_\bn_\bt_\ba_\bx ...) to read the values. | |
175 | ||
176 | t - This symbol always has the value t. It is possible to | |
177 | change the value of this symbol for short periods of | |
178 | time but you are strongly advised against it. | |
179 | ||
180 | top-level - In a lisp system without | |
181 | /usr/lib/lisp/toplevel.l loaded, after a _\br_\be_\bs_\be_\bt is done, | |
182 | the lisp system will _\bf_\bu_\bn_\bc_\ba_\bl_\bl the value of top-level if | |
183 | it is non nil. This provides a way for the user to | |
184 | introduce his own top level interpreter. When | |
185 | /usr/lib/lisp/toplevel.l is loaded, it sets top-level | |
186 | to franz-top-level and changes the _\br_\be_\bs_\be_\bt function so | |
187 | that once franz-top-level starts, it cannot be replaced | |
188 | by changing top-level. Franz-top-level does provide a | |
189 | way of changing the top level however, and that is | |
190 | through user-top-level. | |
191 | \e9 | |
192 | ||
193 | \e9 Printed: July 21, 1983 | |
194 | ||
195 | ||
196 | ||
197 | ||
198 | ||
199 | ||
200 | ||
201 | B-4 | |
202 | ||
203 | ||
204 | user-top-level - If this is bound then after a _\br_\be_\bs_\be_\bt, the | |
205 | top level function will _\bf_\bu_\bn_\bc_\ba_\bl_\bl the value of this sym- | |
206 | bol rather than go through a read eval print loop. | |
207 | ||
208 | ||
209 | ||
210 | ||
211 | ||
212 | ||
213 | ||
214 | ||
215 | ||
216 | ||
217 | ||
218 | ||
219 | ||
220 | ||
221 | ||
222 | ||
223 | ||
224 | ||
225 | ||
226 | ||
227 | ||
228 | ||
229 | ||
230 | ||
231 | ||
232 | ||
233 | ||
234 | ||
235 | ||
236 | ||
237 | ||
238 | ||
239 | ||
240 | ||
241 | ||
242 | ||
243 | ||
244 | ||
245 | ||
246 | ||
247 | ||
248 | ||
249 | ||
250 | ||
251 | ||
252 | ||
253 | ||
254 | ||
255 | ||
256 | \e9 | |
257 | ||
258 | \e9 Printed: July 21, 1983 | |
259 | ||
260 | ||
261 |