chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] [PATCH] [5] Simplify weak symbol GC and make it th


From: Peter Bex
Subject: Re: [Chicken-hackers] [PATCH] [5] Simplify weak symbol GC and make it the default
Date: Thu, 29 Sep 2016 15:08:21 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

On Thu, Sep 29, 2016 at 01:49:47PM +0200, address@hidden wrote:
> Hello!
> 
> I'm currently trying to evaluate these patches and have a few questions:
> 
> - If I understand correctly, a symbol must be explicitly persisted by marking 
> it using
>     "C_i_persist_symbol", but that only seems to happen when assigning to a 
> global in
>     the evaluator, or when using "C_putprop", "remprop!" or "(set! 
> (symbol-plist ...) ...)". What about
>     assignments in compiled code (which uses ##sys#setslot)?

It's quite possible that I overlooked that.  But from what I recall those
symbols are statically allocated and always marked by the GC through the
literal frames, so they should not need to be explicitly marked as
persisted.  Remember, symbols are kept alive by any reference to them,
so even if they're not marked as persisted, as long as something refers
to them they will stick around.

> - Shouldn't C_COLLECT_ALL_SYMBOLS defined in chicken.h instead of all 
> makefiles?
>     Or do you anticipate that this may be undesirable on some platforms?

I think the patch was _removing_ the option, because it is no longer
optional.

Cheers,
Peter

Attachment: signature.asc
Description: Digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]