Skip to main content

Objects as Communicating Prolog Units

  • Conference paper
  • First Online:
ECOOP’ 87 European Conference on Object-Oriented Programming (ECOOP 1987)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 276))

Included in the following conference series:

Abstract

The aim of this paper is to present a set of extensions to the Prolog language in order to insert in it concepts typical of parallel, distributed object-oriented systems. A program is a collection of objects (P-Units) that represent chunks of knowledge expressed as separate Prolog programs. P-units interact by asking for the demonstration of goals conceived as requests for operations. P-units can perform operations in parallel. Policies of interaction between objects, the creation of parallel activities, inheritance and delegation mechanisms are not frozen in the basic interpreter, but can be explicitly expressed in particular P-units that act as meta-objects. This approach enhances both the flexibility and reusability of the resulting object-oriented system.

This work has been supported by CEE Esprit Project p973, ENIDATA S.p.A. and Italian National Research Council (CNR)

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Kowalski: “Predicate Logic as Programming Language”, Proc. IFIP-74 Congress. North Holland, pp. 569–574, 1974.

    Google Scholar 

  2. W.F. Clocksin, C.S. Mellish: “Programming in Prolog”, Springer-Verlag, New-York, 1981.

    MATH  Google Scholar 

  3. D. Warren et alii: “Prolog-The Language and its implementation compared with Lisp”, SIGAST Newsletter 64, pp. 109–115, 1977.

    Google Scholar 

  4. A. Goldberg, D. Robson: Smalltalk-80, The Language and its Implementation. Addison Wesley, 1983.

    Google Scholar 

  5. D. Moon et alii: “LISP Machine Manual”, MIT-Books, AI Laboratory, 1983.

    Google Scholar 

  6. K. Kahn: “Objects in Concurrent Logic Programming Languages”, Proc. OOPSALA-86, Portland, Oregon, September 1986.

    Google Scholar 

  7. K. Furukawa et alii: “Mandala: A Logic Based Knowledge Programming System”, in International Conference on Fifth Generation Computer Systems, 1984.

    Google Scholar 

  8. K. Nakashima “Knowledge Representation in Prolog/KR”, International Symposium on Logic Programming, Atlantic City, February 1984.

    Google Scholar 

  9. T. Chikayama: “ESP Reference Manual”, ICOT Report, Feb. 1984.

    Google Scholar 

  10. K. Fukunaga: “An experience with a Prolog-based Object-Oriented Language”, Proc. OOPSALA-86, Portland, Oregon, September 1986.

    Google Scholar 

  11. C. Zaniolo: “Object Oriented Programming in Prolog”, International Symposium on Logic Programming, Atlantic City, February 1984.

    Google Scholar 

  12. ALPES Esprit Project P973. Technical Annex 1985.

    Google Scholar 

  13. P. Mello, A. Natali: “Programs as Collections of Communicating Prolog Units” In: ESOP, Saarbrucken, March 1986, Lecture Notes in Computer Science n.213, Springer-Verlag.

    Google Scholar 

  14. C. Hewitt, P. De Jong: “Open Systems”, Tech. Rep. MIT-AIM 691 December 1981.

    Google Scholar 

  15. J.A. Robinson: “A machine-oriented logic-based on the Resolution Principle”, Journal of ACM, 12, 23–41, 1965.

    Article  MATH  Google Scholar 

  16. D.G. Theriault: “Issues on the Design and Implementation of ACT2”, Tech. Rep. MIT AI-TR 728, June 1983.

    Google Scholar 

  17. B.J. Nelson: Remote Procedure Call. Dept. of Computer Science, Carnagie-Mellon Univ., Ph.D. Thesis, Rep. CMU-CS-81-119, May 1981.

    Google Scholar 

  18. K. Bowen, R. Kowalski: “Amalgamating language and metalanguage in logic programming”, in Logic Programming, Academic Press, 1982.

    Google Scholar 

  19. L. Aiello, G. Levi: “The uses of meta-knowledge in AI Systems”, ECAI-84, Pisa, September 1984.

    Google Scholar 

  20. “Reference manual for the Ada programming language”, U.S.Departement of Defense, ANSI/MIL-std 1815-a, Jan.1983.

    Google Scholar 

  21. H. Lieberman: “Delegation and Inheritance: Two Mechanisms for Sharing Knowledge in Object-Oriented Systems”, in J. Bezivin, P. Cointe (editors), 3eme Journees d’Etide language Oriente Objets, AFCET, Paris, 1986.

    Google Scholar 

  22. M. Falaschi, G. Levi, C. Palamidessi: “A Synchronization Logic: Axiomatics and Formal Semantics of Generalized Horn Clauses.” Information and Control, Academic Press, Jan.1984.

    Google Scholar 

  23. R.E. Filman, D.P. Friedman: “Actors”, in ‘Coordinated Computing’, Prentice-Hall, 1984.

    Google Scholar 

  24. H. Lieberman: “Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems”, Proc. OOPSALA-86, Portland, Oregon, September 1986.

    Google Scholar 

  25. R. Venken: “A Prolog Meta-Interpreter for Partial Evaluation and its Application to Source to Source Transformation and Query-Optimization”, in Proc. of ECAI-84, North Holland, 1984.

    Google Scholar 

  26. H. Kauffman, A. Grumback: “MULTILOG: MULTIple worlds in LOGic programming”, ECAI-86.

    Google Scholar 

  27. P. Mello, A. Natali: “Configuration of Software Systems: A Domain for Meta-Programming”, Technical Report DEIS, September 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1987 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Mello, P., Natali, A. (1987). Objects as Communicating Prolog Units. In: Bézivin, J., Hullot, JM., Cointe, P., Lieberman, H. (eds) ECOOP’ 87 European Conference on Object-Oriented Programming. ECOOP 1987. Lecture Notes in Computer Science, vol 276. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47891-4_17

Download citation

  • DOI: https://doi.org/10.1007/3-540-47891-4_17

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-18353-2

  • Online ISBN: 978-3-540-47891-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics