Assuming cons cells etc. are each allocated in one place, it looks to me like it should be nearly trivial to sweep a block whenever you run out of free objects of the appropriate type, instead of all at once during GC. That should help appreciably with paging, if indeed that's a problem. Hans