Freebsd Fortunes 2: 392 of 1371 |
=== ALL USERS PLEASE NOTE ========================
Compiler optimizations have been made to macro expand LET into a WITHOUT-
INTERRUPTS special form so that it can PUSH things into a stack in the
LET-OPTIMIZATION area, SETQ the variables and then POP them back when it's
done. Don't worry about this unless you use multiprocessing.
Note that LET *could* have been defined by:
(LET ((LET '`(LET ((LET ',LET))
,LET)))
`(LET ((LET ',LET))
,LET))
This is believed to speed up execution by as much as a factor of 1.01 or
3.50 depending on whether you believe our friendly marketing representatives.
This code was written by a new programmer here (we snatched him away from
Itty Bitti Machines where we was writting COUGHBOL code) so to give him
confidence we trusted his vows of "it works pretty well" and installed it.
|
|
|
Freebsd Fortunes 2: 393 of 1371 |
=== ALL USERS PLEASE NOTE ========================
JCL support as alternative to system menu.
In our continuing effort to support languages other than LISP on the CADDR,
we have developed an OS/360-compatible JCL. This can be used as an
alternative to the standard system menu. Type System J to get to a JCL
interactive read-execute-diagnose loop window. [Note that for 360
compatibility, all input lines are truncated to 80 characters.] This
window also maintains a mouse-sensitive display of critical job parameters
such as dataset allocation, core allocation, channels, etc. When a JCL
syntax error is detected or your job ABENDs, the window-oriented JCL
debugger is entered. The JCL debugger displays appropriate OS/360 error
messages (such as IEC703, "disk error") and allows you to dequeue your job.
|
|
|
Freebsd Fortunes 2: 394 of 1371 |
=== ALL USERS PLEASE NOTE ========================
The garbage collector now works. In addition a new, experimental garbage
collection algorithm has been installed. With SI: |
|
|
Freebsd Fortunes 2: 395 of 1371 |
DSK-GC-QLX-BITS set to 17,
(NOT the default) the old garbage collection algorithm remains in force; when
virtual storage is filled, the machine cold boots itself. With SI: |
|
|
Freebsd Fortunes 2: 396 of 1371 |
DSK-GC-
QLX-BITS set to 23, the new garbage collector is enabled. Unlike most garbage
collectors, the new gc starts its mark phase from the mind of the user, rather
than from the obarray. This allows the garbage collection of significantly
more Qs. As the garbage collector runs, it may ask you something like "Do you
remember what SI:RDTBL-TRANS does?", and if you can't give a reasonable answer
in thirty seconds, the symbol becomes a candidate for GCing. The variable
SI: |
|
|
Freebsd Fortunes 2: 397 of 1371 |
GC-QLX-LUSER-TM governs how long the GC waits before timing out the user.
|
|
|
Freebsd Fortunes 2: 398 of 1371 |
=== ALL USERS PLEASE NOTE ========================
There has been some confusion concerning MAPCAR.
(DEFUN MAPCAR (&FUNCTIONAL FCN &EVAL &REST LISTS)
(PROG (V P LP)
(SETQ P (LOCF V))
L (SETQ LP LISTS)
( |
|
|
Freebsd Fortunes 2: 399 of 1371 |
START-FUNCTION-CALL FCN T (LENGTH LISTS) NIL)
L1 (OR LP (GO L2))
(AND (NULL (CAR LP)) (RETURN V))
( |
|
|
Freebsd Fortunes 2: 400 of 1371 |
PUSH (CAAR LP))
(RPLACA LP (CDAR LP))
(SETQ LP (CDR LP))
(GO L1)
L2 ( |
|
|
Freebsd Fortunes 2: 401 of 1371 |
FINISH-FUNCTION-CALL FCN T (LENGTH LISTS) NIL)
(SETQ LP ( |
|