ACM Home Page
Please provide us with feedback. Feedback
Call-by-value is dual to call-by-name
Full text PdfPdf (201 KB)
Source International Conference on Functional Programming archive
Proceedings of the eighth ACM SIGPLAN international conference on Functional programming table of contents
Uppsala, Sweden
Pages: 189 - 201  
Year of Publication: 2003
ISBN:1-58113-756-7
Also published in ...
Author
Philip Wadler  Avaya Labs
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 49,   Citation Count: 10
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/944705.944723
What is a DOI?

ABSTRACT

The rules of classical logic may be formulated in pairs corresponding to De Morgan duals: rules about & are dual to rules about V. A line of work, including that of Filinski (1989), Griffin (1990), Parigot (1992), Danos, Joinet, and Schellinx (1995), Selinger (1998,2001), and Curien and Herbelin (2000), has led to the startling conclusion that call-by-value is the de Morgan dual of call-by-name.This paper presents a dual calculus that corresponds to the classical sequent calculus of Gentzen (1935) in the same way that the lambda calculus of Church (1932,1940) corresponds to the intuitionistic natural deduction of Gentzen (1935). The paper includes crisp formulations of call-by-value and call-by-name that are obviously dual; no similar formulations appear in the literature. The paper gives a CPS translation and its inverse, and shows that the translation is both sound and complete, strengthening a result in Curien and Herbelin (2000).


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Zena Ariola and Hugo Herbelin (2003) Minimal classical logic and control operators. In 30'th International Colloquium on Automata, Languages and Programming, Eindhoven, The Netherlands.
 
2
 
3
P. Bernays (1936) Review of "Some Properties of Conversion" by Alonzo Church and J. B. Rosser. Journal of Symbolic Logic, 1:74--75.
 
4
George Boole (1847) The mathematical analysis of logic. Macmillan, Barclay, and Macmillan, Cambridge.
 
5
Alonzo Church (1932) A set of postulates for the foundation of logic. Annals of Mathematics, II.33:346--366.
 
6
Alonzo Church (1940) A formulation of the simple theory of types. Journal of Symbolic Logic, 5:56--68.
7
 
8
H. B. Curry and R. Feys (1958) Combinatory Logic. North-Holland (see Chapter 9, Section E).
 
9
 
10
N. G. de Bruijn (1968) The mathematical language Automath, its usage, and some of its extensions. In Symposium on Automatic Demonstration, Versailles, 1968, pages 29--61. Springer-Verlag, Lecture Notes in Mathematics 125, 1970.
 
11
M. Felleisen, D. Friedman, E. Kohlbecker, and B. Duba (1986) Reasoning with continuations. In Proceedings of the First Symposium on Logic in Computer Science, pages 131--141, IEEE.
 
12
Andrzej Filinski (1989) Declarative continuations and categorical duality. Master's thesis, University of Copenhagen, Copenhagen, Denmark, August 1989. (DIKU Report 89/11.)
 
13
Gottlob Frege (1879) Begriffsschrift,a formula language, modeled upon that of arithmetic, for pure thought. Halle. Reprinted in Jan van Heijenoort, editor, From Frege to Gödel, A Sourcebook in Mathematical Logic, 1879--1931, Harvard University Press, 1967.
 
14
Jean Gallier. Constructive Logics. Part II: Linear Logic and Proof Nets. Technical Report, CIS Department, University of Pennsylvania.
 
15
Gerhard Gentzen (1935) Investigations into Logical Deduction. Mathematische Zeitschrift 39:176--210,405--431. Reprinted in M. E. Szabo, editor, The Collected Papers of Gerhard Gentzen, North-Holland, 1969.
 
16
Joseph Diaz Gergonne (1826) Annales de mathématique pures et appliquées, 16:209.
17
 
18
Ivor Grattan Guinness (2000) The Search for Mathematical Roots 1870--1940. Princeton University Press.
 
19
 
20
 
21
Eugenio Moggi (1988) Computational lambda-calculus and monads. Technical Report ECS-LFCS-88-66, Edinburgh University, Department of Computer Science.
 
22
P. H. Nidditch (1969) The Development of Mathematical Logic. Thoemmes Press, Bristol (reprinted 1998).
 
23
24
 
25
 
26
G. D. Plotkin (1975) Call-by-name, call-by-value and the ?-calculus. In Theoretical Computer Science, 1:125--159.
 
27
Jean-Victor Poncelet (1818) Annales de mathématique pures et appliquées, 8:201.
 
28
Dag Prawitz (1965) Natural Deduction: A Proof-Theoretical Study. Almqvist and Wiksell, Stockholm.
 
29
 
30
31
 
32
F. W. K. E. Schröder (1890) Vorlesungen über die Algebra der Logik (Teachings on the Algebra of Logic), Volume 1. Teubner Press, Leibzig.
 
33
Peter Selinger (1998) Control categories and duality: an axiomatic approach to the semantics of functional control. Talk presented at Mathematical Foundations of Programming Semantics, London, May 1998.
 
34
 
35
Gerald Jay Sussman and Guy Lewis Steele Jr. (1975) Scheme: an interpreter for extended lambda calculus. MIT AI Memo 319, December 1975.

CITED BY  10