Abstract
Capsules provide an algebraic representation of the state of a computation in higher-order functional and imperative languages. A capsule is essentially a finite coalgebraic representation of a regular closed λ-coterm. One can give an operational semantics based on capsules for a higher-order programming language with functional and imperative features, including mutable bindings. Static (lexical) scoping is captured purely algebraically without stacks, heaps, or closures. All operations of interest are typable with simple types, yet the language is Turing complete. Recursive functions are represented directly as capsules without the need for fixpoint combinators.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Abadi, M., Cardelli, L.: A Theory of Objects. Springer (1996)
Aboul-Hosn, K.: Programming with Private State. Honors Thesis, The Pennsylvania State University (December 2001), http://www.cs.cornell.edu/%7Ekamal/thesis.pdf
Aboul-Hosn, K., Kozen, D.: Relational Semantics for Higher-Order Programs. In: Yu, H.-J. (ed.) MPC 2006. LNCS, vol. 4014, pp. 29–48. Springer, Heidelberg (2006)
Aboul-Hosn, K., Kozen, D.: Local variable scoping and Kleene algebra with tests. J. Log. Algebr. Program. (2007), doi:10.1016/j.jlap.2007.10.007
Abramsky, S., Honda, K., McCusker, G.: A fully abstract game semantics for general references. In: LICS 1998: Proceedings of the 13th Annual IEEE Symposium on Logic in Computer Science, pp. 334–344. IEEE Computer Society, Washington, DC, USA (1998)
Abramsky, S., McCusker, G.: Linearity, sharing and state: a fully abstract game semantics for idealized ALGOL with active expressions. Electr. Notes Theor. Comput. Sci. 3 (1996)
Barendregt, H.P., Klop, J.W.: Applications of infinitary lambda calculus. Inf. and Comput. 207(5), 559–582 (2009)
Felleisen, M., Hieb, R.: The revised report on the syntactic theories of sequential control and state. Theoretical Computer Science 103, 235–271 (1992)
Halpern, J.Y., Meyer, A.R., Trakhtenbrot, B.A.: The semantics of local storage, or what makes the free-list free? In: Proc. 11th ACM Symp. Principles of Programming Languages (POPL 1984), New York, NY, USA, pp. 245–257 (1984)
Jeannin, J.B.: Capsules and closures. In: Mislove, M., Ouaknine, J. (eds.) Proc. 27th Conf. Math. Found. Programming Semantics (MFPS XXVII), Pittsburgh, PA. Elsevier Electronic Notes in Theoretical Computer Science (May 2011)
Jeannin, J.B.: Capsules and Closures: A Small-Step Approach. In: Constable, R.L., Silva, A. (eds.) Kozen Festschrift. LNCS, vol. 7230, pp. 106–123. Springer, Heidelberg (2012)
Jeannin, J.B., Kozen, D.: Capsules and separation. Tech. Rep., Computing and Information Science, Cornell University (January 2012), http://hdl.handle.net/1813/28284 ; Conf. Logic in Computer Science (LICS 2012), Dubrovnik, Croatia (to appear, June 2012)
Klop, J.W., de Vrijer, R.C.: Infinitary normalization. In: Artemov, S., Barringer, H., d’Avila Garcez, A.S., Lamb, L.C., Woods, J. (eds.) We Will Show Them: Essays in Honour of Dov Gabbay, vol. 2, pp. 169–192. College Publications (2005)
Kozen, D.: New. Tech. Rep., Computing and Information Science, Cornell University (March 2012), http://hdl.handle.net/1813/28632 ; Conf. Mathematical Foundations of Programming Semantics (MFPS XXVIII), Bath, UK (to appear, June 2012)
Laird, J.: A Game Semantics of Local Names and Good Variables. In: Walukiewicz, I. (ed.) FOSSACS 2004. LNCS, vol. 2987, pp. 289–303. Springer, Heidelberg (2004)
Landin, P.J.: The mechanical evaluation of expressions. Computer Journal 6(4), 308–320 (1964)
Mason, I.A., Talcott, C.L.: References, local variables and operational reasoning. In: Seventh Annual Symposium on Logic in Computer Science, pp. 186–197. IEEE (1992), http://www-formal.stanford.edu/MT/92lics.ps.Z
Mason, I., Talcott, C.: Programming, transforming, and proving with function abstractions and memories
Mason, I., Talcott, C.: Axiomatizing operational equivalence in the presence of side effects. In: IEEE Fourth Annual Symposium on Logic in Computer Science, pp. 284–293. IEEE Computer Society Press (1989)
Mason, I., Talcott, C.: Equivalence in functional languages with effects (1991)
McCarthy, J.: History of LISP. In: Wexelblat, R.L. (ed.) History of Programming Languages I, pp. 173–185. ACM (1981)
Milne, R., Strachey, C.: A Theory of Programming Language Semantics. Halsted Press, New York (1977)
Moggi, E.: Notions of computation and monads. Information and Computation 93(1) (1991)
Pitts, A.M.: Operationally-based theories of program equivalence. In: Dybjer, P., Pitts, A.M. (eds.) Semantics and Logics of Computation, pp. 241–298. Publications of the Newton Institute, Cambridge University Press (1997), http://www.cs.tau.ac.il/~nachumd/formal/exam/pitts.pdf
Pitts, A.M.: Operational semantics and program equivalence. Tech. rep., INRIA Sophia Antipolis (2000), http://www.springerlink.com/media/1f99vvygyh3ygrykklby/contributions/l/w/f/6/lwf6r3jxn7a2lkq0.pdf ; lectures at the International Summer School On Applied Semantics, APPSEM 2000, Caminha, Minho, Portugal (September 2000)
Pitts, A.M., Stark, I.D.B.: Operational reasoning in functions with local state. In: Gordon, A.D., Pitts, A.M. (eds.) Higher Order Operational Techniques in Semantics, pp. 227–273. Cambridge University Press (1998), http://homepages.inf.ed.ac.uk/stark/operfl.pdf
Pitts, A.M., Stark, I.D.B.: Observable Properties of Higher Order Functions that Dynamically Create Local Names, or What’s New? In: Borzyszkowski, A.M., Sokolowski, S. (eds.) MFCS 1993. LNCS, vol. 711, pp. 122–141. Springer, Heidelberg (1993)
Scott, D.: Mathematical concepts in programmng language semantics. In: Proc. 1972 Spring Joint Computer Conferences, pp. 225–234. AFIPS Press, Montvale (1972)
Stoy, J.E.: Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory. MIT Press, Cambridge (1981)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jeannin, JB., Kozen, D. (2012). Computing with Capsules. In: Kutrib, M., Moreira, N., Reis, R. (eds) Descriptional Complexity of Formal Systems. DCFS 2012. Lecture Notes in Computer Science, vol 7386. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31623-4_1
Download citation
DOI: https://doi.org/10.1007/978-3-642-31623-4_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-31622-7
Online ISBN: 978-3-642-31623-4
eBook Packages: Computer ScienceComputer Science (R0)