On Sat, Dec 12, 2009 at 3:07 PM, P T Withington <[email protected]> wrote:

> On 2009-12-11, at 12:43, Brendan Eich wrote:
>
> > It would be more than nice. It is important that the spec not mandate any
> particular schedule. We have seen endless over-coupling to GC implementation
> details where programmers who can hook into finalization or another GC phase
> do so for all the wrong reasons: to close fds, free database cursors, send a
> message, update UI, etc. Crazy stuff.
>
> +n
>
> In my experience, it is always a bad idea for the GC to invoke user-code.
>
>
Always? E uses async post mortem finalization to implement distributed
acyclic GC. Without some way for "GC to invoke user code", I don't see how
this is possible. Without it, the resulting memory leak is severe enough to
discourage many good distributed programming patterns.



> Please don't throw out the weak-key tables with the finalization bathwater.
>
> > But if there is no guarantee of when the notification might happen, then
> programmers should not expect any scheduling akin to setTimeout with a
> timeout of zero.
>
> I initially mis-read this as saying setTimeout with a timeout of 0 might
> never be scheduled.  But that's not what you said.
>
> --
>
> I was amused by this aside from the strawman:
>
> > Since I can never remember the black/white polarity of traditional gc
> descriptions, I will use retained for black, fringe for gray, and untraced
> for white.
>



-- 
   Cheers,
   --MarkM
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to