Abstract
Following the program of Moggi, the semantics of a simple non-deterministic functional language with recursion and failure is described by a monad. We show that this monad cannot be any of the known power domain constructions, because they do not handle non-termination properly. Instead, a novel construction is proposed and investigated. It embodies both nondeterminism (choice and failure) and possible non-termination caused by recursion.
Preview
Unable to display preview. Download preview PDF.
References
S. Abramsky. A domain equation for bisimulation. Information and Computation, 92:161–218, 1991.
A. Asperti and G. Longo. Categories, Types, and Structures. Foundations of Computing Series. The MIT Press, 1991.
W.F. Clocksin and C.S. Mellish. Programming in Prolog. Springer-Verlag, 1984.
C.A. Gunter. Relating total and partial correctness interpretations of non-deterministic programs. In P. Hudak, editor, Principles of Programming Languages (POPL '90), pages 306–319. ACM, 1990.
R. Heckmann. A functional language for the specification of complex tree transformations. In H. Ganzinger, editor, ESOP '88, pages 175–190. Lecture Notes in Computer Science 300, Springer-Verlag, 1988.
R. Heckmann. Power Domain Constructions. PhD thesis, Universität des Saarlandes, 1990.
R. Heckmann. Power domain constructions. Science of Computer Programming, 1991. to appear.
R. Hoofman. Powerdomains. Technical Report RUU-CS-87-23, Rijksuniversiteit Utrecht, November 1987.
M.C.B Hennessy and G.D. Plotkin. Full abstraction for a simple parallel programming language. In J. Becvar, editor, Foundations of Computer Science, pages 108–120. Lecture Notes in Computer Science 74, Springer-Verlag, 1979.
J.D. Lawson. The versatile continuous order. In Michael G. Main, A. Melton, Michael Mislove, and D. Schmidt, editors, Mathematical Foundations of Programming Language Semantics (MFPLS '87), pages 565–622. Lecture Notes in Computer Science 298, Springer-Verlag, 1988.
J. Lambek and P.J. Scott. Introduction to Higher Order Categorical Logic, volume 7 of Cambridge Studies in Advanced Mathematics. Cambridge University Press, 1986.
S. MacLane. Categories for the Working Mathematician. Springer-Verlag, 1971.
E. Moggi. Computational lambda-calculus and monads. In 4th LICS Conference. IEEE, 1989.
E. Moggi. A modular approach to denotational semantics. In D.H. Pitt, P.-L. Curien, S. Abramsky, A.M. Pitts, A. Poigné, and D.E. Rydeheard, editors, Category Theory and Computer Science, pages 138–139. Lecture Notes in Computer Science 530, Springer-Verlag, 1991.
E. Moggi. Notions of computation and monads. Information and Computation, 93:55–92, 1991.
G.D. Plotkin. A powerdomain construction. SIAM Journal on Computing, 5(3):452–487, 1976.
M.B. Smyth. Power domains. Journal of Computer and System Sciences, 16:23–36, 1978.
M.B. Smyth and G.D. Plotkin. The category-theoretic solution of recursive domain equations. SIAM Journal on Computing, 11:761–783, 1982.
P. Wadler. Comprehending monads. In Symposium on Lisp and Functional Programming, pages 61–78. ACM, 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Heckmann, R. (1992). Power domains supporting recursion and failure. In: Raoult, J.C. (eds) CAAP '92. CAAP 1992. Lecture Notes in Computer Science, vol 581. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55251-0_9
Download citation
DOI: https://doi.org/10.1007/3-540-55251-0_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55251-2
Online ISBN: 978-3-540-46799-1
eBook Packages: Springer Book Archive