Abstract
We propose a semantic framework for modelling the linear usage of continuations in typed call-by-name programming languages. On the semantic side, we introduce a construction for categories of linear continuations, which gives rise to cartesian closed categories with “linear classical disjunctions” from models of intuitionistic linear logic with sums. On the syntactic side, we give a simply typed call-by-name λμ-calculus in which the use of names (continuation variables) is restricted to be linear. Its semantic interpretation into a category of linear continuations then amounts to the call-by-name continuation-passing style (CPS) transformation into a linear lambda calculus with sum types. We show that our calculus is sound for this CPS semantics, hence for models given by the categories of linear continuations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ariola, Z.M., Herbelin, H.: Minimal classical logic and control operators. In: Baeten, J.C.M., Lenstra, J.K., Parrow, J., Woeginger, G.J. (eds.) ICALP 2003. LNCS, vol. 2719, pp. 871–885. Springer, Heidelberg (2003)
Barber, A.: Linear Type Theories, Semantics and Action Calculi. PhD Thesis ECS-LFCS-97-371, Univ. Edinburgh (1997)
Barber, A., Plotkin, G.: Dual intuitionistic linear logic. Manuscript. An earlier version available as Technical Report ECS-LFCS-96-347, Univ. Edinburgh (1997)
Barr, M.: ∗-Autonomous Categories. Lecture Notes in Math, vol. 752. Springer, Heidelberg (1979)
Barr, M.: ∗-autonomous categories and linear logic. Math. Struct. Comp. Sci. 1, 159–178 (1991)
Benton, N.: A mixed linear non-linear logic: proofs, terms and models (extended abstract). In: Pacholski, L., Tiuryn, J. (eds.) CSL 1994. LNCS, vol. 933, pp. 121–135. Springer, Heidelberg (1995)
Berdine, J., O’Hearn, P.W., Reddy, U.S., Thielecke, H.: Linearly used continuations. In: Proc. 3rd ACM SIGPLAN Workshop on Continuations, CW 2001, Technical Report No. 545, Computer Science Dept., Indiana Univ., pp. 47–54 (2001)
Berdine, J., O’Hearn, P.W., Reddy, U.S., Thielecke, H.: Linear continuation-passing. Higher-Order and Symbolic Computation 15(2/3), 181–203 (2002)
Bierman, G.M.: What is a categorical model of intuitionistic linear logic? In: Dezani-Ciancaglini, M., Plotkin, G. (eds.) TLCA 1995. LNCS, vol. 902, pp. 78–93. Springer, Heidelberg (1995)
Blute, R., Cockett, J.R.B., Seely, R.A.G.: ! and? - storage as tensorial strength. Mathematical Structures in Computer Science 6(4), 313–351 (1996)
Filinski, A.: Declarative continuations: an investigation of duality in programming language semantics. In: Dybjer, P., Pitts, A.M., Pitt, D.H., Poigné, A., Rydeheard, D.E. (eds.) Category Theory and Computer Science. LNCS, vol. 389, pp. 224–249. Springer, Heidelberg (1989)
Filinski, A.: Linear continuations. In: Proc. 19th Annual ACM SIGPLAN SIGACT Symposium on Principles of Programming Languages (POPL 1992), pp. 27–38 (1992)
Girard, J.-Y.: Linear logic. Theoret. Comp. Sci. 50, 1–102 (1987)
Hasegawa, M.: Linearly used effects: monadic and CPS transformations into the linear lambda calculus. In: Hu, Z., Rodríguez-Artalejo, M. (eds.) FLOPS 2002. LNCS, vol. 2441, pp. 167–182. Springer, Heidelberg (2002)
Hasegawa, M.: Classical linear logic of implications. In: Bradfield, J.C. (ed.) CSL 2002 and EACSL 2002. LNCS, vol. 2471, pp. 458–472. Springer, Heidelberg (2002)
Hofmann, M., Streicher, T.: Continuation models are universal for λμ- calculus. In: Proc. 12th Annual IEEE Symposium on Logic in Computer Science (LICS 1997), pp. 387–397 (1997)
Hyland, M., Schalk, A.: Glueing and orthogonality for models of linear logic. Theoret. Comp. Sci. 294(1/2), 183–231 (2003)
Kakutani, Y.: Duality between call-by-name recursion and call-by-value iteration. In: Bradfield, J.C. (ed.) CSL 2002 and EACSL 2002. LNCS, vol. 2471, pp. 506–521. Springer, Heidelberg (2002)
Kameyama, Y., Hasegawa, M.: A sound and complete axiomatization of delimited continuations. In: Proc. 8th ACM SIGPLAN International Conference on Functional Programming (ICFP 2003), pp. 177–188 (2003)
Laird, J.: A game semantics of linearly used continuations. In: Gordon, A.D. (ed.) FOSSACS 2003. LNCS, vol. 2620, pp. 313–327. Springer, Heidelberg (2003)
Lambek, J., Scott, P.J.: Introduction to Higher Order Categorical Logic. Cambridge Studies in Advanced Mathematics, vol. 7. Cambridge University Press, Cambridge (1986)
Moggi, E.: Notions of computation and monads. Inform. and Comput. 93(1), 55–92 (1991)
Parigot, M.: λμ-calculus: an algorithmic interpretation of classical natural deduction. In: Voronkov, A. (ed.) LPAR 1992. LNCS, vol. 624, pp. 190–201. Springer, Heidelberg (1992)
Power, A.J., Robinson, E.P.: Premonoidal categories and notions of computation. Math. Structures Comput. Sci. 7(5), 453–468 (1997)
Seely, R.A.G.: Linear logic, ∗-autonomous categories and cofree coalgebras. In: Categories in Computer Science, AMS Contemp. Math., vol. 92, pp. 371–389 (1989)
Selinger, P.: Control categories and duality: on the categorical semantics of the lambda-mu calculus. Math. Structures Comput. Sci. 11(2), 207–260 (2001)
Wadler, P.: Call-by-value is dual to call-by-name. In: Proc. 8th ACM SIGPLAN International Conference on Functional Programming (ICFP 2003), pp. 189–202 (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hasegawa, M. (2004). Semantics of Linear Continuation-Passing in Call-by-Name. In: Kameyama, Y., Stuckey, P.J. (eds) Functional and Logic Programming. FLOPS 2004. Lecture Notes in Computer Science, vol 2998. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24754-8_17
Download citation
DOI: https://doi.org/10.1007/978-3-540-24754-8_17
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21402-1
Online ISBN: 978-3-540-24754-8
eBook Packages: Springer Book Archive