'Kay, here's a question.

How much control should we allow user programs to have over the 
garbage collector and memory allocation system?

Right now, there's a default memory pool size and a default headers 
per alloc count, both set with #defines, and a default number of 
failed allocations before we collect, hard-coded in resources.c. 
(Currently 64K, 256, and 1, respectively) It'd be easy enough to make 
these changeable on a per-interpreter basis, but I'm not sure if it's 
worth it or not.

Arguably they ought to be under the control of the GC system itself 
with some sort of clever feedback system (which is pricey, but called 
rarely, and seem to improve performance sufficiently to make it 
worthwhile) but I'm not sure when, or if, we'll have that sort of 
system in place.

OTOH, exposing the controls for twidding does mean that we probably 
won't ever be able to unexpose them, which limits our potential 
flexibility in the future.

Opinions, folks?
-- 
                                         Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                       teddy bears get drunk

Reply via email to