Re: continuations and threads Jim Blandy 21 Mar 2000 18:55 UTC
> >> Sure, but I don't think SML/NJ actually *detects* that it's still > >> relevant. (The GC could, I guess.) This means that the retained C > >> frame may still keep data alive which is really dead. This might > >> create a space leak. > > Jim> Roland did this work for Olin Shivers' group at MIT; I don't know if > Jim> it has made it into the main distribution. But that's correct --- you > Jim> need the GC to tell you when KS2 is garbage, and thus C2 can be > Jim> destroyed. > > And does Roland's implementation do that? I imagine this being pretty > hard to do, especially if the GC is written in C: you want to remove C > frames *underneath* the current one without affection the ongoing > evaluation. I'm sorry --- you'll have to explain the scenario you have in mind in more detail. The specific action you propose never takes place, because it violates this rule, which I quoted before: - When we destroy a C frame, all younger C frames must also be destroyed. Can you describe a situation where this needs to happen?