Re: RVs are now stored in the PMC

[email protected] (Arthur Bergman) Wed, 23 Jun 2004 14:57:31 +0100
Newsgroups perl.ponie.dev
Message-ID <[email protected]>
On 23 Jun 2004, at 14:21, Nicholas Clark wrote:

> Ponie now stores RVs in the PMC slot of the PMC, instead of a struct 
> xrv
> hanging off the the SV head. This means that now SvRV() returns a 
> different
> lvalue from SvPVX().
>
> All tests still pass [although Devel::Peek's test needed tweaking 
> again :-)]
>
> The PMC in the PMC slot should be visible to the parrot garbage 
> collector,
> so there should be no need to register it with parrot, and therfore no 
> need
> to reference count it.
>

Wow!

This is incredible good news, well done Nicholas! That means we are 
actually storing an aggregate directly in PMC from inside ponie. This 
is what I suspected would be one of the biggest conceptual hurdles for 
the PMC switch over. With the RV as a proof of concept the switchover 
for the other aggregates (AV/HV/etc) shouldn't be too hard, and then we 
are very much closer to achieving the transition.

I think parrot also doesn't care about over refdecounting, just like 
perl.

Cheers
Arthur

-----
Infrastructure Manager @ Fotango Ltd
+447834716919
http://www.fotango.com/