safe for space

Henry Cejtin henry@clairv.com
Tue, 27 Jun 2000 20:30:24 -0500


I  was  thinking  about the flattener, and realized that if you don't require
the flatten-ness of a procedure  result  to  be  the  same  as  that  of  any
procedures it tail-calls to you won't be safe-for-space.  The problem is that
unlike other coercions, where you only coerce up a finite lattice,  here  you
can have loops.  I.e., if f tail-calls g and the result of f is flat and that
of g is non-flat and g tail-calls f, then both of those tail-calls will  turn
into non-tail-calls and you will use unbounded space.

Is this restriction currently in place (I.e., are we safe for space now)?