Hostname: page-component-6766d58669-88psn Total loading time: 0 Render date: 2026-05-20T23:43:30.067Z Has data issue: false hasContentIssue false

Fully abstract translations between functional languages

Published online by Cambridge University Press:  04 March 2009

Jon G. Riecke
Affiliation:
AT&T Bell Laboratories, 600 Mountain Avenue, Murray Hill, NJ 07974

Abstract

We examine the problem of finding fully abstract translations between programming languages, i.e., translations that preserve code equivalence and nonequivalence. We present three examples of fully abstract translations: one from call-by-value to lazy PCF, one from call-by-name to call-by-value PCF, and one from lazy to call-by-value PCF. The translations yield lower bounds on decision procedures for proving equivalences of code. We define a notion of ‘functional translation’ that captures the essence of the proofs of full abstraction, and show that some languages cannot be translated into others.

Information

Type
Research Article
Copyright
Copyright © Cambridge University Press 1993

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable