MTS 8: LISP and SLIP in MTS
June 1976
IOARG identifies the current buffer for the tab operation. If
IOARG is not given, or is NIL, the system output buffer is used.
The file portion of IOARG is ignored.
FILL, if given, must be an atom or a buffer pointer (IOARG). The
PNAME of FILL will be used as a filler for any positions skipped
during a tab operation to the right.
(SKIP N IOARG FILL)
SKIP causes a skip operation to be performed N spaces to the right.
If N is negative, the skip will be to the left. An attempt to SKIP
outside the buffer will generate an error.
IOARG identifies the current buffer for the skip operation. If
IOARG is not given, or is NIL, then the system output buffer is
used. The file portion of IOARG is ignored.
FILL, if given, must be an atom or an buffer pointer (IOARG). The
PNAME of FILL will be used as a filler for any positions skipped
during a skip operation to the right.
Note: TAB and SKIP affect the value of the buffer length for
output only. These routines cannot be used for the purpose of
skipping around in a buffer to READ various positions.
ERROR RECOVERY AND DEBUGGING PROCEDURES _______________________________________
Error Atoms, Error Forms, and Error Expressions _______________________________________________
There are a number of different errors that are recognized by the
LISP system. When an error of type N occurs, the error message for that
type becomes the "current" error message. The expression which generat-
ed the error (e.g., the illegal argument) becomes the "current" error
expression, and the error form associated with that type is evaluated.
After the error form is evaluated, LISP is restarted at the top level.
The error form for an error number is accessed through an atom,
called the error atom. A call to the STATUS function will associate an
error number with a given atom. After this, whenever that error type
occurs, the VALUE of that atom will be used as the error form.
At present, there are three predefined error atoms within the LISP
system. The atom *ATTN* is the error atom for error number 1, which
occurs whenever an attention interrupt is generated. The atom *PGNT* is
the error atom for error number 0, which occurs whenever a nonnumeric
program interrupt occurs. The atom *ERR* is the error atom for all
other errors.
56 LISP