A Crazy Thought about CallContext Recycling and Caching

Vasily Chekalkin bacek at bacek.com
Mon Jan 4 23:01:26 UTC 2010


chromatic wrote:
>  
> Refcounting gave us fits there.
> 
> If destroy() isn't reliable for figuring out when CallContexts are safe to put 
> back in the cache, we have a bigger problem elsewhere.  Refcounting won't be a 
> problem --  or do you see another issue I can't recall now?

Refcounting of ctx->outer_ctx will be almost impossible to implement 
correctly. There is too many codepaths to access it. And it's very 
likely to have cycles in CallContexts considering CPS style VM.

My opinion is to focus on Generational (Copying) GC which will give 
advantages in all areas, not only CallContext usage.

-- 
Bacek.


More information about the parrot-dev mailing list