[plt-scheme] Behind the scenes, is everything running using continuation passing style?
> If you *really* want to understand what's going on with CPS for
> compilation, read also the paper on A-normalization:
>
> PLDI 93 Flanagan, Sabry, Duba and Felleisen
> The Essence of Compiling with Continuations
> http://www.cs.rice.edu/CS/PLT/Publications/Scheme/pldi93-fsdf.ps.gz
An extension of this work is _A Reflection on Call-by-Value_ by Sabry
and Wadler. One of the results is that the CPS language and the ANF
language are isomorphic. (One might consider their CPS language somewhat
different in that continuations are not values.) Thus I tend to take the
(radical?) view these compilation techniques as equivalent. A
linearization based on a transformation to post-fix notation that
subsequently becomes stack-machine code (see Norvig's Paradigms of AI
Programming) strikes me as very different.
As others have said, my impression is that ANF has become a very popular
intermediate representation. While it is not CPS, it is surely a close
cousin.
-Arthur