Wiederholung CPS-Interpreter:
type Cont = Val -> Action Val
eval :: Env -> Exp -> Cont -> Action Val
eval env x = \ k -> case x of
ConstInt i -> ...
Plus a b -> ...
CPS-Transformator:
type Cont = ExpValue -> Transform Exp
cps :: Exp -> Cont -> Transform Exp
cps x = \ m -> case x of
ConstInt i -> ...
Plus a b -> ...