[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
ad-hoc vs. planned subsets.
When we are concerned about supplying a minimal lisp for some application at
Perq (and CMU), we just load whatever application stuff there is into a lisp
and disembowel the lisp in such a way as to make all of the Common Lisp stuff
that isn't used available for GC. We then force a GC and save the new,
application-specific lisp core. The real problem then, becomes knowing what
minimal stuff the foreign language will call in order not to disembowel too
much. I don't really have much of a feel for how important such minimal
lisps are; I think this a task of the subset committee.
The problem I see with this approach is that it is ad-hoc for
each individual application. In all likelyhood, trying to combine
programs developed separately, will produce less and less savings
as the number of independent pieces goes up.
To the subset committee: I can imagine applications where the delivery
vehicle for a lisp application is a fairly limited piece of hardware; is a
subset appropriate or would the method described above be acceptable? We've
found that very straightforward methods of reducing a lisp core's size
result in dramatic space reductions; more thoughtful approaches should
result in really small lisps for delivery of applications without requiring
a specific minimal subset (although a "kernel" subset might be useful for
As I see it, the real reason for having well defined subsets is
to increase the ability to intgrate work from many places successfully.