A while ago Jonathan said:
> However, the Macintosh Lisp of around that time (c. 1990) used
> a better idea, and (again, if memory serves) only required
> 8 bytes per list cell, without using tags. The trick is to
> use separate areas of memory for list cells versus everything
> else. (Actually, if you are going to do that, then you may as
> well have separate areas for a few other things as well, such as
> storage which cannot contain pointers, e.g. strings.) This would
> make memory management (particularly the garbage collector) a
> lot more complicated, and there are other costs, but it would
> probably have been a better choice.
Interestingly, this was our original choice for POP-2, namely to
have a "zoo" of objects divided into "cages" so that you knew
what an animal was by the cage it was in. I decided, after
hearing of Mike Foster's Absys implementation, that his keycell
idea could be made to work with fewer problems.
Robin.
|