transform :: Exp -> Transform Exp transform x = case x of ... ConstInt i -> do k<-fresh; return $ Abs k (App (Ref k) x)
type Cont = Exp -> Transform Exp transform :: Exp -> ( Cont -> Transform Exp ) transform x = case x of ... ConstInt i -> \ k -> k x