Abstract
This paper describes the results of an experiment in the use of the Gödel logic programming language for object-oriented programming. An object-oriented program is implemented in Gödel at two levels. First, at the base or object level, the static features such as object identity, the classification of objects, and message passing between objects are implemented using the basic Gödel language. Secondly, at the top or meta-level, the dynamic features such as changing the attributes of an object or creating a new object are implemented using the meta-programming facilities provided by Gödel. This experiment highlights the advantages of using Gödel for such a task as well as showing its limitations.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
H. Aït-Kaci and P. Lincoln. LIFE, a natural language for natural language. Technical Report ACA-ST-074-88, MCC, Austin, USA, 1990.
J. Andreoli and R. Pareschi. Linear objects: Logical processes with built-in inheritance. In The Seventh International Conference on Logic Programming, Jerusalem, Israel, pages 495–510. MIT Press, 1990.
W. Chen and D.S. Warren. Objects as intensions. In K. Bowen and R. Kowalski, editors, The Fifth International Conference and Symposium on Logic Programming, Seattle, USA, pages 404–419. MIT Press, 1988.
W. Chen and D.S.Warren. C-logic of complex objects. In The Eighth ACM Symposium on Principles of Database Systems, Philadelphia, USA, pages 369–378, 1989.
J.S. Conery. Object oriented programming with first order logic. Technical Report CIS-TR-87-09, Dept. of Computer and Information Science, University of Oregon, USA, 1987.
J.S. Conery. Logical objects. In R.A. Kowalski and K.A. Bowen, editors, The Fifth International Conference and Symposium on Logic Programming, Seattle, USA, pages 420–434. MIT Press, 1988.
G. David and A. Porto. Semantics of inheritance in hierarchic systems. Position paper in the ICLP91 pre-conference workshop on merging object-oriented and logic programming, June 1991.
I. de Zegher and M. Baudinet. BIM-Probe: An object oriented language on top of BIM-Prolog. In The EUREKA Project PROTOS, Zürich, April 1990.
M.P.J. Fromhertz. Explore/L: An object-oriented logic language. Technical Report Nr. 91.06, Institut für Informatik der Universität Zürich, 1991.
P. Gailly and J. Binot. Position paper. In the ICLP91 pre-conference workshop on merging object-oriented and logic programming, June 1991.
A. Goldberg and D. Robson. SmallTalk-80, The Language and its Implementation. Addison-Wesley, 1983.
P.M. Hill and J.W. Lloyd. The Gödel report. Technical Report TR-91-02, Dept. of Computer Science, University of Bristol, UK, 1991. Revised Feb 1992.
M. Kifer, G. Lausen, and J. Wu. Logical foundations of object-oriented and frame-based languages. Technical Report 90/14, Dept. of Computer Science, State University of New York at Stony Brook, USA, 1990.
M. Kifer and J. Wu. A logic for programming with complex objects. To be published in the Journal of Computing and System Sciences, 1992.
E. Laenens, B. Verdonk, D. Vermeir, and D. Sacca. The LOCO language: Towards an integration of logic and object oriented programming. Technical Report 90-09, Dept. of Mathematics and Computer Science, Universitaire Instelling, Antwerp, Belgium, 1990.
E. Laenens and D. Vermeir. Object oriented logic programming using ordered logic. Position paper in the ICLP91 pre-conference workshop on merging objectoriented and logic programming, June 1991.
J.W. Lloyd. Foundations of Logic Programming. Springer-Verlag, 2nd edition, 1987.
D. Maier. A logic for objects. In J. Minker, editor, Workshop on Foundations of Deductive Databases and Logic Programming, Washington D.C., USA, 1986.
M.J. Sergot and F.N. Kesim. On the dynamics of objects in a logic programming framework. Position paper in the ICLP91 pre-conference workshop on merging object-oriented and logic programming, June 1991.
E. Shapiro. The family of concurrent logic programming languages. ACM Computing Surveys, 21(3):412–510, 1989.
E. Y. Shapiro and A. Takeuchi. Object-oriented programming in Concurrent PROLOG. New Generation Computing, 1(1):25–48, 1983.
G. Smolka and H. Aït-Kaci. Inheritance hierarchies: Semantics and unification. Journal of Symbolic Computation, 7:343–369, 1989.
M. Stefik and D.G. Bobrow. Object-oriented programming: Themes and variations. The AI Magazine, 6(4):40–62, 1984.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Benkerimi, K., Hill, P.M. (1992). Object-oriented programming in Gödel: An experiment. In: Pettorossi, A. (eds) Meta-Programming in Logic. META 1992. Lecture Notes in Computer Science, vol 649. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56282-6_12
Download citation
DOI: https://doi.org/10.1007/3-540-56282-6_12
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-56282-5
Online ISBN: 978-3-540-47505-7
eBook Packages: Springer Book Archive