[plt-scheme] Behind the scenes, is everything running using continuation passing style?
On 11/14/07, Grant Rettke <grettke at acm.org> wrote:
>
> I took it then that when you call call/cc, you are simply exposing
> access to the current continuation that is going to be called after
> the current function has finished evaluation.
>
> Behind the scenes, is everything running using continuation passing style?
That depends on the implementation. In the case of PLT, the answer is
no. There is a scheme compiler named Chicken, which does perform CPS
transformation on source *and* actually uses the CPS continuations in
its call/cc. That's an important point, by the way: even compilers
that do perform CPS transformations (and I don't believe there are
many of these any more) do not necessarily use the CPS continuations
to implement call/cc.