POPL
Stephen Weeks
MLton@sourcelight.com
Tue, 23 Jan 2001 16:03:30 -0800 (PST)
> re language support for property lists, are you thinking of some kind of
> weak-pointer thing, or something more than that? The weak-pointer notion
> (jazzed up for what property lists need) would make sense, but I don't think
> I would want more than that built in.
No, I was thinking of something so that we don't pay for some or all of
* the ref cell for the list ref
* the list headers
* the indirection for the exception
* the exeption header
* the exception tag
Some amount of flattening would help, but we also need whole-program analysis of
property list length could probably determine a maximum length on some of the
lists and replace them by single slots or arrays. A really cool analysis might
even remove some exception tags.
> As to Wang, yes, it is all in MLton. He does CPS-conversion so that there is
> no use of the stack (so that his GC can scan the continuation).
So he heap allocates the stack?
> As to the number of object types before the I-cache would cause problems, I
> would guess a MUCH smaller number. Probably a few hundred. The size of the
> L-1 I-cache is only 8 or 16K bytes.
OK. It could be an issue then. It would be interesting to get some numbers on
the distribution of objects for large programs. I'll take a look at Dan's paper
and maybe ping him.