Abstract
We propose a general categorical setting for modeling program composition in which the call-by-value and call-by-name disciplines fit as special cases. Other notions of composition arising in denotational semantics are captured in the same framework: our leading examples are nondeterministic call-by-need programs and nonstrict functions with side effects. Composition of such functions is treated in our framework with the same degree of abstraction that Moggi’s categorical approach based on monads allows in the treatment of call-by-value programs. By virtue of such abstraction, interesting program equivalences can be validated axiomatically in mathematical models obtained by means of modular constructions.
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
Jon Beck. Distributive laws. In B. Eckman, editor, Seminar on triples and categorical homology theory, pages 119–140, Berlin, 1969. Springer LNM 80.
M. Barr and C. Wells. Toposes, triples and theories. Springer-Verlag, New York, 1985.
P. Cenciarelli. Computational applications of calculi based on monads. PhD thesis, Department of Computer Science, University of Edinburgh, 1995. CST-127-96. Also available as ECS-LFCS-96-346.
P. Cenciarelli. Objects and computation. Presented at the Dagstuhl seminar on “The Semantic Challenge of Object-Oriented Programming”, Schloss Dagstuhl, Wadern, Germany, 28/6-3/7 1998.
P. Cenciarelli, A. Knapp, B. Reus, and M. Wirsing. An Event-Based Structural Operational Semantics of Multi-Threaded Java. In J. Alves-Foss, editor, Formal Syntax and Semantics of Java, 1523 LNCS. Springer, 1998.
P. Cenciarelli and E. Moggi. A syntactic approach to modularity in denotational semantics. In Proceedings of 5th Biennial Meeting on Category Theory and Computer Science. CTCS-5, 1993. CWI Tech. Report.
M.P. Jones and L. Duponcheel. Composing monads. Technical Report YALEU/DCS/RR-1004, Department of Computer Science, Jale University, 1993.
G.M. Kelly and A.J. Power. Adjunctions whose counits are coequalizers, and presentations of finitary monads. Journal of Pure and Applied Algebra, 89:163–179, 1993.
F.E.J. Linton. Coequalizers in Categories of Algebras. In Seminar on Triples and Categorical Homology Theory, pages 75–90. Springer LNM 80, 1969.
E. Moggi. An abstract view of programming languages. Technical Report ECS-LFCS-90-113, University of Edinburgh, Comp. Sci. Dept., 1990.
E. Moggi. Modular approach to denotational semantics. Unpublished manuscript, November1990.
E. Moggi. Notions of computation and monads. Information and Computation, 93(1), 1991.
E.P. Robinson. Note on the presentation of enriched monads. Unpublished manuscript, available by ftp from theory.doc.ic.ac.uk, 1995.
R. Street. The formal theory of monads. Journal of Pure and Applied Algebra, 2:149–168, 1972.
R.D. Tennent. Semantics of programming languages. Prentice Hall, 1991.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cenciarelli, P. (1998). An Algebraic View of Program Composition. In: Haeberer, A.M. (eds) Algebraic Methodology and Software Technology. AMAST 1999. Lecture Notes in Computer Science, vol 1548. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49253-4_24
Download citation
DOI: https://doi.org/10.1007/3-540-49253-4_24
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65462-9
Online ISBN: 978-3-540-49253-5
eBook Packages: Springer Book Archive