Hostname: page-component-cd9895bd7-gvvz8 Total loading time: 0 Render date: 2024-12-23T05:00:00.208Z Has data issue: false hasContentIssue false

Control reduction theories: the benefit of structural substitution

Published online by Cambridge University Press:  01 May 2008

ZENA M. ARIOLA
Affiliation:
University of Oregon
HUGO HERBELIN
Affiliation:
INRIA-Futurs with a Historical Note by Matthias Felleisen
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

The historical design of the call-by-value theory of control relies on the reification of evaluation contexts as regular functions and on the use of ordinary term application for jumping to a continuation. To the contrary, the control calculus, developed by the authors, distinguishes between jumps and terms. This alternative calculus, which derives from Parigot's λμ-calculus, works by direct structural substitution of evaluation contexts. We review and revisit the legacy theories of control and argue that provides an observationally equivalent but smoother theory. In an additional note contributed by Matthias Felleisen, we review the story of the birth of control calculi during the mid- to late-eighties at Indiana University.

Type
Articles
Copyright
Copyright © Cambridge University Press 2007

References

Ariola, Z. M. & Herbelin, H. (2003) Minimal classical logic and control operators. In Thirtieth International Colloquium on Automata, Languages and Programming, ICALP'03, eindhoven, the Netherlands, June 30 – July 4, 2003, vol. 2719. Springer-Verlag, LNCS, pp. 871885.Google Scholar
Ariola, Z. M.Herbelin, H. & Sabry, A. (2004) A type-theoretic foundation of continuations and prompts. In ACM Sigplan International Conference on Functional Programming. New York: ACM Press, pp. 4053.Google Scholar
Ariola, Z. M.Herbelin, H. & Sabry, A. (2007) A proof-theoretic foundation of abortive continuations. Higher-Order and Symbolic Computation. 20 (4). In press.Google Scholar
Ariola, Z. M.Herbelin, H. & Sabry, A. (2008) A type-theoretic foundation of delimited continuations. Higher-Order and Symbolic Computation. To appear.CrossRefGoogle Scholar
Baba, K.Hirokawa, S. & etsuFujita, K. Fujita, K. (2001) Parallel reduction in type free λμ-calculus. Electronic notes in theoretical computer science, 42, 5266.Google Scholar
Curien, P.-L. & Herbelin, H. (2000) The duality of computation. In ACM Sigplan International Conference on Functional Programming. New York: ACM Press, pp. 233243.Google Scholar
deGroote, P. Groote, P. (1994) On the relation between the lambda-mu calculus and the syntactic theory of sequential control. In Pfennig, F. (ed), Logic Programming and Automated Reasoning, Proc. of the 5th International Conference, LPAR'94. Berlin, Heidelberg: Springer, pp. 3143.Google Scholar
Duba, B. F.Harper, R. & MacQueen, D. (1991) Typing first-class continuations in ML. In Conference Record of the Eighteenth Annual ACM Symposium on Principles of Programming Languages, pp. 163–173.CrossRefGoogle Scholar
Felleisen, M. (1988) The theory and practice of first-class prompts. In Proceedings of the 15th ACM symposium on Principles of Programming Languages (popl '88). New York: ACM Press, pp. 180190.Google Scholar
Felleisen, M. & Friedman, D. (1986) Control operators, the secd machine, and the lambdacalculus. In Formal Description of Programming Concepts-iii. North-Holland, pp. 193217.Google Scholar
Felleisen, M. & Hieb, R. (1992) The revised report on the syntactic theories of sequential control and state. Theor. Comput. Sci. 103 (2), 235271.CrossRefGoogle Scholar
Felleisen, M.Friedman, D.Kohlbecker, E. & Duba, B. (1986) Reasoning with continuations. In First Symposium on Logic and Computer Science, pp. 131–141.Google Scholar
Felleisen, M.Friedman, D. P.Kohlbecker, E. & Duba, B. (1987) A syntactic theory of sequential control. Theor. Comput. Sci. 52(3), 205–237. Preliminary version: Reasoning with Continuations, in Proceedings of the 1st IEEE Symposium on Logic in Computer Science, 1986.Google Scholar
Filman, R. E. & Friedman, D. P. (1984) Coordinated Computing: Tools and Techniques for Distributed Software. New York: McGraw Hill.Google Scholar
Ganz, S. E.Friedman, D. P. & Wand, M. (1999) Trampolined style. In ACM sigplan international conference on functional programming. New York: ACM Press, pp. 1827.Google Scholar
Griffin, T. G. (1990) The formulae-as-types notion of control. InConf. Record 17th Annual ACM Symp. on Principles of Programming Languages, POPL'90, s an francisco, CA, USA, 17–19 Jan 1990. New York: ACM Press, pp. 4757.Google Scholar
Haynes, C. T. & Friedman, D. P. (1984) Engines build process abstractions. In Conference record of the 1984 ACM Symposium on Lisp and Functional Programming. ACM, pp. 18–24.Google Scholar
Huet, G. & Lévy, J.-J. (1991) Computations in orthogonal rewriting systems 1 and 2. Computational Logic. Essays in Honor of Alan Robinson. ed. j.-l. lassez & g.d. plotkin.Google Scholar
Murthy, C. (1992) Control operators, hierarchies, and pseudo-classical type systems: A- translation at work. ACM Workshop on Continuations, pp. 49–71.Google Scholar
Ong, C.-H. L. & Stewart, C. A. (1997) A Curry-Howard foundation for functional computation with control. Conf. Record 24th ACM SIGPLAN-SIGACT symp. on Principles of Programming Languages, POPL'97, Paris, France, 15–17 Jan. 1997. New York: ACM Press, pp. 215227.Google Scholar
Parigot, M. (1992) Lambda-mu-calculus: An algorithmic interpretation of classical natural deduction. In Logic Programming and Automated Reasoning: International Conference LPAR '92 Proceedings, St. Petersburg, Russia. Springer-Verlag, pp. 190201.CrossRefGoogle Scholar
Plotkin, G. D. (1975) Call-by-name, call-by-value, and the λ-calculus. Theor. Comput. Sci. 1, 125–159.Google Scholar
van Oostrom, V. (1994) Confluence by decreasing diagrams. Theor. Comput. Sci. 126 (1), 259280.CrossRefGoogle Scholar
Submit a response

Discussions

No Discussions have been published for this article.