[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
LIMIT-CONS for arrays and hunks
- To: REM at MIT-MC
- Subject: LIMIT-CONS for arrays and hunks
- From: JONL at MIT-MC (Jon L White)
- Date: Tue, 26 Dec 78 15:14:00 GMT
- Cc: (BUG LISP) at MIT-MC, jmc at SU-AI, rww at SU-AI, wilber at SRI-KL
- Cc: gsb at MIT-ML
- Original-date: 26 DEC 1978 1014-EST
The informations provided by
1) (ALLOC 'T)
2) (GETSP (1+ (GETSP 0)))
3) input to GC-DAEMON
are sufficient to write the consers you want, namely "take-new-cell if
enough space already, otherwise return ()". One problem is that the
array space will dynamically increase and decrease (but if NORET is
non-null, it will not decrease).
The current action by maclisp, upon running out of any allocatable
space, was deemed satisfactory for most usages; this action is described
in the various places that the function ALLOC and the feature GC-DAEMON
is discussed. Henry Baker's package on AI:LIBDOC;GCDEMN BAKER1 provides
one interesting usage of these features in a way to override the system
defaults. I really don't see how programming the storage management in
machine language is less work than accepting the limitations of a LISP
system and working around that (providing of course that the limitations
are not prohibitory).