This is the mail archive of the
guile@sources.redhat.com
mailing list for the Guile project.
Re: CPS transformation and partial evaluation
Jost Boekemeier <jostobfe@calvados.zrz.TU-Berlin.DE> writes:
> [translating foreign languages into scheme]
>
> Mikael Djurfeldt <mdj@mdj.nada.kth.se> writes:
>
> > We have wonderful tools such as partial evaluators and cps. For
> > example, it's not necessary to use tagbody forms or continuations to
> > handle jumps.
>
> Yeah. Do you have references to good papers that discuss partial
> evaluators?
I believe you already got some good references from Ralf.
> All I've red about CPS is that although it is easy to do certain
> optimizations after CPS transformation it is possible and probably
> better to do the optimizations in the source language. [I think
> I've seen comments from Matthias Felleisen about it, but I can't
> remember when and where].
That sounds plausible. He and his students have been studying the
relationship between transformations made in the source language and
in CPS. See for example
http://citeseer.nj.nec.com/sabry94is.html
However note that these discussions focus on how to do optimizations,
not on how to translate other languages into Scheme.
If you want to learn about CPS, I can recommend the book:
A. Appel (1992) "Compiling With Continuations", Cambridge U Press