1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-11 23:53:12 +00:00
PDP-10.its/doc/libdoc/faslre.info
2018-05-07 08:40:52 +02:00

41 lines
1.6 KiB
Plaintext
Executable File

FASLREA is a package of functions for reading s-expressions and other
information from a FASL file (see also FASDMP). The source is MC:RLB;FASLRE >.
The three main functions are:
(FASLREADOPEN <file spec>) which opens the file, initializes, and
returns a FASL-OBJ for use by FASLREAD and FASLREADCLOSE.
(FASLREAD <FASL-obj>) which reads an item and returns it, with a type code
consed onto its front:
EVAL - the item was an "EVAL Mungeable". The CDR is the item.
ENTRY - the CDR is (<subr name> <subr type> <args prop>)
EOF - the end of the FASL file was reached.
(FASLREADCLOSE <FASL-obj>) which closes the file and flushes all
associated arrays.
An additional function (QFASLREAD <fas-obj>) reads an object and returns
it, with a code consed on its front:
ENTRY - the CDR is the subr name
EXT - the CDR is the symbol subject to the call
EOF - the end of the FASL file was reached.
DDT symbols are needed for the following LAP symbols:
BNCONS
In Lisp versions > /1567, DDT symbols won't be needed.
------------------------------------------------------------------
IMPLEMENTATION --
A FASL-OBJ is a Lisp T-type array with 6 entries:
(0) is byte-obj, a Lisp FIXNUM array with 9. entries storing the
relocation bytes
(1) is index indicating current (next) relocation type byte
(2) is Newio file object
(3) is the atom table, a Lisp T-type array
(4) is the maximum subscript for the atom table (1- size)
(5) is the greatest used subscript in the atom table.
For a discussion of FASL format, relocation bytes, and atom table,
see .INFO.FASBIN FORMAT .