On Mon, 14 Sep 2009, Abdulaziz Ghuloum wrote: > Sorry. I guess my question isn't clear. Let me try something else. > > In this one-pass expansion, do you think it's possible to expand > > (let ([f (lambda () 1)]) > (let () > (define (g) (f)) > (define (f) 2) > (g))) > > to something like > > (let ([f0 (lambda () 1)]) > (letrec* ([g1 (lambda () (f1))] > [f1 (lambda () 2)]) > (g1)) > > directly (i.e., without uncovering all internally-defined identifiers > first, and without doing a second renaming pass)?
No, I cannot think of a way to do so without a second pass. Andre _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
