[plt-scheme] precise GC and the embedded MzScheme C API

From: Jim Blandy (jimb at redhat.com)
Date: Thu Jun 23 19:27:43 EDT 2005

Adam Wick <awick at cs.utah.edu> writes:
> On Jun 23, 2005, at 10:57 AM, Jim Blandy wrote:
> > Have you thought about what sort of interface you'd like an embedded
> > MzScheme to provide to third-party C code when it's using the precise
> > GC?  Are you going to have end users run gc2/xform.ss on their code?
> 
> Yes and sort of.
> 
> There will be a successor to xform coming, hopefully, sometime this
> year. It will not only do the xform stuff, which adds precise GC
> information to the C stack, but also have a tool for generating
> functions to mark and repair your structures, as well as to add
> tagging information when you allocate structures (including your
> own structures).
> 
> It should work on most C programs (the ones that don't play very
> silly games with their stacks) and a small subset of C++ (no
> templates, no exceptions, no namespaces; but classes and overloading
> should work.).
> 
> This, by the way, is my dissertation research.

Sounds great!  Are you going to try to support multi-threaded programs
where the threads can't be trusted to reach safe points from time to
time?

(I can see why templates would be a challenge: the C++ compiler is
essentially producing entirely new code as it does type elaboration,
which your tool doesn't get a chance to modify.  But C++ is capable of
doing a lot of the annotation itself, so tools like xform are less
critical there.)



Posted on the users mailing list.