Re: PMC changes?
[email protected] (Leopold Toetsch) Thu, 14 Jul 2005 18:01:53 +0200
| Newsgroups | perl.perl6.internals,perl.ponie.dev |
|---|---|
| Message-ID | <[email protected]> |
Nicholas Clark wrote: > Is the PMC layout likely to remain stable? There's been talk of minimal > PMC heads (data, vtable) in relation to the generational garbage collector > proposals. Is this likely to happen? Related to this there has been talk of > variable sized bodies. I'd like to have a small head and variable sized bodies. Now we have a rigid structure (or rather two: PMC, PMC_EXT), and the variable part e.g. object attributes hangs off another structure in pmc->pmc_ext->data. This is not only suboptimal from data locality or access time POV, it's more a serious restriction, how you lay out your PMC data. WRT generational GC: yes such a PMC layout is very likely needed to be able to partition your existing PMCs into generations. src/gc_gms.c tries a different approach and needs 4 extra pointers per PMC. > If there are changes, how much of the existing API will still work? Will > code using the macros in parrot/pobj.h need much changing? I don't expect much changes, because these macros exist and and used. PMCs can be switched one by one (mostly) to use a new data layout, but that again schould be transparent, if you use VTABLE_foo. > Nicholas Clark leo