|  | Definition: |  | 
(CPS) A semantically clean language with continuations used as an intermediate language for Scheme and the SML/NJ compiler. ["Rabbit: A Compiler for Scheme", G.L. Steele, AI-TR-474, MIT (May 1978)]. ["Compiling With Continuations", A. Appel, Cambridge U Press 1992].(CPS) A style of programming in which every user function f takes an extra argument c known as a continuation. Whenever f would normally return a result r to its caller, it instead returns the result of applying the continuation to r. The continuation thus represents the whole of the rest of the computation.  Some examples:  normal (direct style)    -->        continuation passing
 square x = x * x                square x k = k (x*x)
 g (square 23)                        square 23 g
 (square 3) + 1                        square 3 ( \ s . s+1 ) |