Abstract
Moggi's use of monads to factor semantics is used to model the composable continuations of Danvy and Filinski. This yields some insights into the type systems proposed by Murthy and by Danvy and Filinski. Interestingly, modelling some aspects of composable continuations requires a structure that is almost, but not quite, a monad.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Damas, L. and Milner, R. Principal type-schemes for functional programs. In9th Symposium on Principles of Programming Languages, Albuquerque, New Mexico, ACM (January 1982).
Danvy, O. and Filinski, A.A functional abstraction of typed contexts. Technical Report, Copenhagen University (August 1989).
Danvy, O. and Filinski, A. Abstracting control. InConference on Lisp and Functional Programming, Nice, France, ACM (June 1990).
Danvy, O. and Filinski, A. Representing control.Mathematical Structures in Computer Science, 2, 4 (December 1992).
Duba, B., Harper, R., and MacQueen, D. Typing first-class continuations in ml. In18'th Symposium on Principles of Programming Languages, Orlando, Florida, ACM (January 1991).
Felleisen, M. The theory and practice of first-class prompts. In15th Symposium on Principles of Programming Languages, San Diego, California, ACM (January 1988).
Hindley, R. The principle type-scheme of an object in combinatory logic.Trans. Am. Math. Soc., 146 (1969) 29–60.
Kieburtz, R., Agapiev, B., and Hook, J. Three monads for continuations. InACM SIGPLAN Workshop on Continuations (June 1992). Stanford University Report STAN-CS-92-1426.
Moggi, E. Computational lambda-calculus and monads. InSymposium on Logic in Computer Science, Asilomar, California, IEEE (June 1989). A longer version is available as a technical report from the University of Edinburgh.
Murthy, C. Control operators, hierarchies, and pseudo-classical type systems. InProceedings of the ACM SIGPLAN Workshop on Continuations (June 1992). Stanford University Report STAN-CS-92-1426.
Peyton Jones, S. and Wadler, P. Imperative functional programming. In20th Symposium on Principles of Programming Languages, Charleston, South Carolina, ACM (January 1993).
Plotkin, G. Call-by-name, call-by-value, and the λ-calculus.Theoretical Computer Science, 1 (1975) 125–159.
Rees, J. and Clinger, W. (eds). The revised3 report on the algorithmic language scheme.ACM SIGPLAN Notices, 21, (12) (1986) 37–79.
Reynolds, J. C. Definitional interpreters for higher-order programming languages. In25'th ACM National Conference (1972) 717–740.
Reynolds, J. C. Three approaches to type structure. InMathematical Foundations of Software Development, LNCS 185, Springer-Verlag (1985).
Wadler, P. Comprehending monads.Mathematical Structures in Computer Science, 2, 4 (December 1992). An earlier version appears inConference on Lisp and Functional Programming, Nice, France, ACM, June 1990.
Wadler, P. The essence of functional programming. In19th Symposium on Principles of Programming Languages, Albuquerque, New Mexico, ACM (January 1992).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Wadler, P. Monads and composable continuations. LISP and Symbolic Computation 7, 39–55 (1994). https://doi.org/10.1007/BF01019944
Issue Date:
DOI: https://doi.org/10.1007/BF01019944