On Fri, Dec 04, 2009 at 09:00:33AM -0700, Kevin Tew wrote:
> Pmichaud is hinting at my primary concern.
> 
> Intergenerational pointer invariants should not be enforced manually.
> 
> Constant PMCS are a headache.  We have had lots of "GC bugs" because
> developers hung non-constant objects off of a constant pmc.
> 
> This is even worse if a specific PMC type is used in both constant
> and non-constant settings.
> [...]

In my previous message I failed to mention that "long lived PMC"
is not always the same as "constant PMC".  I'd like for us to
make that clear distinction now, though, and not fall into the
trap of thinking that we're only talking about constants or PMCs
that are invariant throughout their lifetime.  Certainly someone's
HLL program that parses a large file and builds a very large data
structure would end up with long-lived PMCs that aren't constant.
Indeed, this is exactly what happens with compilers such as NQP
at the moment.

The scary bit is the amount of performance hit we appear to be
taking even though the structures are not all that large.

Pm
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to