On one-pass CPS transformations

10Citations
Citations of this article
36Readers
Mendeley users who have this article in their library.

Abstract

We bridge two distinct approaches to one-pass CPS transformations, i.e., CPS transformations that reduce administrative redexes at transformation time instead of in a post-processing phase. One approach is compositional and higher-order, and is independently due to Appel, Danvy and. Filinski, and Wand, building on Plotkin's seminal work. The other is noncompositional and based on a reduction semantics for the lambda-calculus, and is due to Sabry and Felleisen. To relate the two approaches, we use three tools: Reynolds's defunctionalization and its left inverse, refunctionalization; a special case of fold-unfold fusion due to Ohori and Sasano, fixed-point promotion ; and an implementation technique for reduction semantics due to Danvy and Nielsen, refocusing. This work is directly applicable to transforming programs into monadic normal form.

Cite

CITATION STYLE

APA

Danvy, O., Millikin, K., & Nielsen, L. R. (2007). On one-pass CPS transformations. Journal of Functional Programming, 17(6), 793–812. https://doi.org/10.1017/S0956796807006387

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free