Abstract
In this paper the semantics of the communication mechanism of the distributed logic programming language DLP is studied. DLP combines logic programming with object oriented features and parallelism. For an abstract subset of DLP both an operational and denotational semantics is given. The language DLP supports active objects, method call by rendez-vous and moreover (distributed) backtracking over the results of such a rendez-vous. To enable further exploitation of parallelism, the rendez-vous provided is asynchronous. A distinction is made between the creation of a process for evaluating the method call on the one hand, and the request for an answer on the other hand. To model this communication mechanism (syntactic) resumptions are employed. The notion of a resumption explains the backtracking taking place in the asynchronous rendez-vous. In addition, resumptions facilitate the systematic comparison of the operational and denotational semantics presented.
Preview
Unable to display preview. Download preview PDF.
References
P. America, POOL-T: a parallel object oriented language, in: [Yonezawa and Tokoro, 1987]
P. America and J.W. de Bakker, Designing equivalent models for process creation, Theoretical Computer Science, 60 (2) (1988) pp. 109ā176
P. America, J.W. de Barker, J.N. Kok and J.J.M.M. Rutten, Denotational semantics of a Parallel Object Oriented Language, Information and Computation, 83 (2) (1989) pp. 152ā205
P. America and J.J.M.M. Rutten, A parallel objectoriented language: design and foundations, Joint Ph.D. thesis, Vrije Universiteit Amsterdam (1989)
P. America and J.J.M.M. Rutten, Solving reflexive domain equations in a category of complete metric spaces, Journal of Computer and System Sciences, 39 (1989) pp. 343ā375
P. America and J.J.M.M. Rutten, A layered semantics for a parallel object-oriented language, in: Foundations of Object-Oriented Languages, J.W. de Bakker, W.P. de Roever and G. Rozenberg (eds.), Lecture Notes in Computer Science 489, Springer (1991) pp. 91ā123
J.W. de Bakker, J.N. Kok, J.-J.Ch. Meyer, E.-R. Olderog and J.I. Zucker, Contrasting themes in the semantics of imperative concurrency, in: Current Trends in Concurrency: Overviews and Tutorials, J.W. de Bakker, W.P. de Roever and G. Rozenberg (eds.), Lecture Notes in Computer Science 224, Springer (1986) pp. 51ā121
J.W. de Bakker, J.-J.Ch. Meyer, E.-R. Olderog and J.I. Zucker, Transition systems, metric spaces and ready sets in the semantics of uniform concurrency, Journal of Computer and System Sciences 36 (1988), 158ā224
F.S. De Boer, J.N. Kok, C. Palamidessi, J.J.M.M. Rutten, From failure to success: Comparing a denotational and a declarative semantics for Horn Clause Logic, in: Proc. International BCS-FACS Workshop on Semantics for Concurrency, M.Z. Kwiatkowska, M.W. Shields and R.M. Thomas (eds.), Workshops in Computing. Springer (1990), pp. 38ā60
H. Bal, J. Steiner and A. Tanenbaum, Programming languages for distributed systems, ACM Computing Surveys, 21 (3) (1989) pp. 262ā322
J.W. de Bakker, Designing concurrency semantics, in: Proc. 11th World Computer Congress, G.X. Ritter (ed.), North Holland (1989) pp. 591ā598
J.W. de Bakker and J.-J.Ch. Meyer, Metric semantics for concurrency, BIT 28 (1988) pp. 504ā529
J.W. de Bakker and E.P. de Vink, CCS for OO and LP, in: Proc. Theory and Practice of Software Development '91, Vol. 2, S. Abramsky and T.S.E. Maibaum (eds.), Lecture Notes in Computer Science 494, Springer (1991) pp. 1ā28
J.W. de Bakker and J.I. Zucker, Processes and the denotational semantics of concurrency, Information and Control 54 (1982) pp. 70ā120
J.W. de Bakker, Comparative semantics for flow of control in logic programming without logic, Information and Computation 91 (1991) pp. 123ā179
F. van Breugel, Comparative semantics for a real-time programming language with integration, in: Proc. Theory and Practice of Software Development '91 S. Abramsky and T.S.E. Maibaum (eds.) vol. 1, Lecture Notes in Computer Science 493, Springer (1991) pp 397ā411
A. de Bruin, E.P. de Vink, Continuation semantics for PROLOG with cut, in: Proc. Theory and Practice of Software Development '89, Vol I, J. Diaz and F. Orejas (eds.), Lecture Notes in Computer Science 351, Springer (1989) pp. 178ā192
A. Davison, Polka: A Parlog object oriented language, Ph.D. thesis, Dept. of Computing, Imperial College, London (1989)
D. DeGroot, Restricted and-parallelism, in: Proc. Future Generation Computer Systems, ICOT (1984) pp. 471ā478
A. Eliƫns, Extending Prolog to a Parallel Object Oriented Language, Proc. IFIP W.G. 10.3 Working Conference on Decentralized Systems (1989) Lyon
A. EliĆ«ns, Distributed Logic Programming for Artificial Intelligence, AI Communications Vol. 4 No. 1, 1991, pp. 11ā21
A. Eliƫns and E.P. de Vink, Asynchronous rendez-vous in the presence of backtracking, ISLP'91 Workshop on Asynchronous Communication, november 1991, San Diego
A. EliĆ«ns, DLP āA language for Distributed Logic Programming, Wiley (1992)
N. Jones and A. Mycroft, Stepwise development of operational and denotational semantics for Prolog, in: Proc. Int. Symp. on Logic Programming, Atlantic City (1984) pp. 281ā288
J.-M. Jacquet & L. Monteiro, Comparative Semantics for a Parallel Contextual Programming Language, in: Proc. North-American Logic Programming Conf., S. Debray and M. Hermenegildo (eds.), MIT Press (1990) pp. 195ā214.
G.M. Karam, Prototyping Concurrent systems with Multilog, Technical Report Dept. of Systems and Computer Engineering Carleton University (1988)
K. Kahn, E. Tribble, M. Millar, D. Bobrow, Objects in concurrent logic programming languages, OOPSLA 86, N. Meyrowitz (ed.), SIGPLAN Notices Vol. 21, No. 11, 1986 pp. 242ā257
J.N. Kok, A compositional semantics for Concurrent Prolog, in: Proc. 5th Annual Symp. on Theoretical Aspects of Computer Science, Bordeaux, February 1988, R. Cori and M. Wirsing (eds.), Lecture Notes in Computer Science 294, Springer (1988) pp. 373ā388
J. Kok and J. Rutten, Contractions in comparing concurrency semantics, in: Proc. Automata, Languages and Programming, T. Lepisto and A. Salomaa (eds.), Lecture Notes in Computer Science 317, Springer (1988) pp. 317ā332
L. Monteiro and A. Porto, Contextual Logic Programming, Report UNL-50/88, University Lisboa (1988)
L.M. Pereira and R. Nasr, Delta Prolog: A distributed logic programming language, in: Proc. FGCS, ICOT (1984) pp. 283ā231
J.J.M.M. Rutten, Semantic correctness for a parallel object-oriented language, SIAM Journal on Computing19, 1990, pp. 341ā383
E.P. de Vink, Comparative semantics for Prolog with cut, Science of Computer Programming 13 (1990), pp. 237ā264
S. Yokoi, A Prolog based object oriented language SPOOL and its compiler, in: Proc. Logic Programming 86, Tokyo, E. Wada (ed.), Lecture Notes in Computer Science 264, Springer (1986) pp. 116ā125
C. Zaniolo, Object oriented programming in Prolog, in: Proc. Int. Symp. on Logic Programming, Atlantic City, IEEE (1984) pp. 265ā270
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
Ā© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Eliƫns, A., de Vink, E.P. (1993). Asynchronous rendez-vous in distributed logic programming. In: de Bakker, J.W., de Roever, W.P., Rozenberg, G. (eds) Semantics: Foundations and Applications. REX 1992. Lecture Notes in Computer Science, vol 666. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56596-5_34
Download citation
DOI: https://doi.org/10.1007/3-540-56596-5_34
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-56596-3
Online ISBN: 978-3-540-47595-8
eBook Packages: Springer Book Archive