contifier bug

Matthew Fluet fluet@CS.Cornell.EDU
Tue, 27 Feb 2001 08:17:41 -0500 (EST)


> > I think the immediate form of transformation would be a good way of
> > formally presenting the transformation in the paper.  The argument might
> > go something like this: given a safe analysis A, construct the analysis
> > forest.  Consider a node of this forest where all children are leaves.  Do
> > the transformation of contifying all the children at the node (this would
> > presumably be where the main work is: what to do to contify in a function
> > and at a jump); the resulting program has less functions and A restricted
> > to these functions is a safe analysis for the resulting program, so we can
> > continue processing the analysis forest.
> 
> Since we're using the simple definition of safety (i.e. no A*), isn't the simple
> one pass over the program transformation sufficient?  That is, transforming a
> toplevel function f introduces at the top of f's body (transformed versions of)
> the functions g such that A(g) = f and transforming a continuation k introduces
> just after k (transformed versions of) the functions g such that A(g) = k.

I think we're saying essentially the same thing, just differing on how
explicit the dfs is being expressed.  But, I like this description better.
And I don't think the simple safety / A* safety makes a difference for
transformations with mutual recursion.