[R6RS] Yet another question (to Matthew I guess)

Manuel Serrano Manuel.Serrano
Fri Oct 1 03:21:18 EDT 2004


> > Does it mean that the following program *must* raise an error:
> > 
> > -----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----
> > (module foo r6rs
> > 
> >  (display (foo 3))
> > 
> >  (define (foo x) x)
> >  )
> > -----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----
> 
> > If it does I don't see how the compiler will be able to do a good job
> > when compiling function calls...
> 
> It turns out not to be difficult.  See:
> 
>   http://www.cs.indiana.edu/~dyb/pubs/fixing-letrec.pdf
> 
> The basic trick is to use a separate validity flag that says whether a
> variable can legally be referenced.
I know this paper. I don't think that the proposed solution solved
the problem I'm mentioning. I don't think that the problem is actually simple.

-- 
Manuel


More information about the R6RS mailing list