CPS-Transformation: Zielsyntax

Exp/CPS ==> (app Id Exp/Value^*)
    | (if Exp/Value Exp/CPS Exp/CPS)
    | (let ((Id Exp/Letable)) Exp/CPS)
    | (error Msg)
Exp/Value ==> Literal + Identifier 
Exp/Letable ==> Literal
    | (abs Id^* Exp/CPS)
    | (prim Primop Exp/Value^*)

Übersetze

(@+ (@- 0 (@* b b)) (@* 4 (@* a c)))



2010-10-12