{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,7]],"date-time":"2025-12-07T16:01:17Z","timestamp":1765123277568},"reference-count":23,"publisher":"Cambridge University Press (CUP)","issue":"3","license":[{"start":{"date-parts":[[2008,5,1]],"date-time":"2008-05-01T00:00:00Z","timestamp":1209600000000},"content-version":"unspecified","delay-in-days":0,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["J. Funct. Prog."],"published-print":{"date-parts":[[2008,5]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>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<jats:private-char><jats:inline-graphic xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" mime-subtype=\"gif\" mimetype=\"image\" xlink:type=\"simple\" xlink:href=\"S0956796807006612_char1\" \/><\/jats:private-char>control calculus, developed by the authors, distinguishes between<jats:italic>jumps<\/jats:italic>and<jats:italic>terms<\/jats:italic>. This alternative calculus, which derives from Parigot's \u03bb\u03bc-calculus, works by direct<jats:italic>structural substitution<\/jats:italic>of evaluation contexts. We review and revisit the legacy theories of control and argue that<jats:private-char><jats:inline-graphic xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" mime-subtype=\"gif\" mimetype=\"image\" xlink:type=\"simple\" xlink:href=\"S0956796807006612_char1\" \/><\/jats:private-char>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.<\/jats:p>","DOI":"10.1017\/s0956796807006612","type":"journal-article","created":{"date-parts":[[2007,10,22]],"date-time":"2007-10-22T11:47:45Z","timestamp":1193053665000},"page":"373-419","source":"Crossref","is-referenced-by-count":16,"title":["Control reduction theories: the benefit of structural substitution"],"prefix":"10.1017","volume":"18","author":[{"given":"ZENA M.","family":"ARIOLA","sequence":"first","affiliation":[]},{"given":"HUGO","family":"HERBELIN","sequence":"additional","affiliation":[]}],"member":"56","published-online":{"date-parts":[[2008,5,1]]},"reference":[{"key":"S0956796807006612_ref20","first-page":"215","volume-title":"Conf. Record 24th ACM SIGPLAN-SIGACT symp. on Principles of Programming Languages, POPL'97, Paris, France, 15\u201317 Jan. 1997","author":"Ong","year":"1997"},{"key":"S0956796807006612_ref5","doi-asserted-by":"publisher","DOI":"10.1016\/S1571-0661(04)80878-8"},{"key":"S0956796807006612_ref23","doi-asserted-by":"publisher","DOI":"10.1016\/0304-3975(92)00023-K"},{"key":"S0956796807006612_ref15","first-page":"18","volume-title":"ACM sigplan international conference on functional programming","author":"Ganz","year":"1999"},{"key":"S0956796807006612_ref19","unstructured":"Murthy C. (1992) Control operators, hierarchies, and pseudo-classical type systems: A- translation at work. ACM Workshop on Continuations, pp. 49\u201371."},{"key":"S0956796807006612_ref17","doi-asserted-by":"crossref","unstructured":"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\u201324.","DOI":"10.1145\/800055.802018"},{"key":"S0956796807006612_ref11","doi-asserted-by":"publisher","DOI":"10.1016\/0304-3975(92)90014-7"},{"key":"S0956796807006612_ref7","first-page":"31","volume-title":"Logic Programming and Automated Reasoning, Proc. of the 5th International Conference, LPAR'94","author":"de","year":"1994"},{"key":"S0956796807006612_ref8","doi-asserted-by":"crossref","unstructured":"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\u2013173.","DOI":"10.1145\/99583.99608"},{"key":"S0956796807006612_ref1","doi-asserted-by":"crossref","first-page":"871","DOI":"10.1007\/3-540-45061-0_68","volume-title":"Thirtieth International Colloquium on Automata, Languages and Programming, ICALP'03, eindhoven, the Netherlands, June 30 \u2013 July 4, 2003","author":"Ariola","year":"2003"},{"key":"S0956796807006612_ref2","first-page":"40","volume-title":"ACM Sigplan International Conference on Functional Programming","author":"Ariola","year":"2004"},{"key":"S0956796807006612_ref14","volume-title":"Coordinated Computing: Tools and Techniques for Distributed Software","author":"Filman","year":"1984"},{"key":"S0956796807006612_ref10","first-page":"193","volume-title":"Formal Description of Programming Concepts-iii","author":"Felleisen","year":"1986"},{"key":"S0956796807006612_ref9","first-page":"180","volume-title":"Proceedings of the 15th ACM symposium on Principles of Programming Languages (popl '88)","author":"Felleisen","year":"1988"},{"key":"S0956796807006612_ref22","doi-asserted-by":"crossref","unstructured":"Plotkin G. D. (1975) Call-by-name, call-by-value, and the \u03bb-calculus. Theor. Comput. Sci. 1, 125\u2013159.","DOI":"10.1016\/0304-3975(75)90017-1"},{"key":"S0956796807006612_ref16","first-page":"47","volume-title":"Conf. Record 17th Annual ACM Symp. on Principles of Programming Languages, POPL'90, s an francisco, CA, USA, 17\u201319 Jan 1990","author":"Griffin","year":"1990"},{"key":"S0956796807006612_ref13","doi-asserted-by":"crossref","unstructured":"Felleisen M. Friedman D. P. Kohlbecker E. & Duba B. (1987) A syntactic theory of sequential control. Theor. Comput. Sci. 52(3), 205\u2013237. Preliminary version: Reasoning with Continuations, in Proceedings of the 1st IEEE Symposium on Logic in Computer Science, 1986.","DOI":"10.1016\/0304-3975(87)90109-5"},{"key":"S0956796807006612_ref6","first-page":"233","volume-title":"ACM Sigplan International Conference on Functional Programming","author":"Curien","year":"2000"},{"key":"S0956796807006612_ref3","doi-asserted-by":"publisher","DOI":"10.1007\/s10990-007-9007-z"},{"key":"S0956796807006612_ref12","unstructured":"Felleisen M. Friedman D. Kohlbecker E. & Duba B. (1986) Reasoning with continuations. In First Symposium on Logic and Computer Science, pp. 131\u2013141."},{"key":"S0956796807006612_ref4","doi-asserted-by":"crossref","unstructured":"Ariola Z. M. Herbelin H. & Sabry A. (2008) A type-theoretic foundation of delimited continuations. Higher-Order and Symbolic Computation. To appear.","DOI":"10.1007\/s10990-007-9006-0"},{"key":"S0956796807006612_ref18","unstructured":"Huet G. & L\u00e9vy 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."},{"key":"S0956796807006612_ref21","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0013061"}],"container-title":["Journal of Functional Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S0956796807006612","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,4,27]],"date-time":"2020-04-27T09:17:52Z","timestamp":1587979072000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S0956796807006612\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2008,5]]},"references-count":23,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2008,5]]}},"alternative-id":["S0956796807006612"],"URL":"https:\/\/doi.org\/10.1017\/s0956796807006612","relation":{},"ISSN":["0956-7968","1469-7653"],"issn-type":[{"value":"0956-7968","type":"print"},{"value":"1469-7653","type":"electronic"}],"subject":[],"published":{"date-parts":[[2008,5]]}}}