Leakiness and Kernels

To: common-lisp@SU-AI.ARPA

Subject: Leakiness and Kernels

From: Stan Shebs <SHEBS@UTAH-20.ARPA>

Date: Sat 9 Jun 84 11:11:10-MDT

(Thanx for the replies to my question about io buffering)
As far as I can tell, the CL spec does not say anything about how much
an implementation is allowed to "leak", that is, how much and what sort
of space does not have to be reclaimed within a running Lisp process.
Seems like an implementation-dependent thing, but then one has to worry
about whether a 3-hour running time program that does 1K or more GCs
will be able to run on different machines. I suppose stack depths and
so forth are also portability barriers of the same sort. What's the
story?
Also, I've heard much discussion around at Utah about how a CL kernel
must be gigantic, and that Hedrick@Rutgers had done a kernel that
took up an entire segment on the 20, and so forth. Is there some
deep reason why this must be true? Much of CL can be (inefficiently)
implemented as macros, and even some of the datatypes could be
done as structures defined by loadable modules. Exactly what *must*
be in the kernel?
stan shebs
-------