APICe » Publications » Object-Oriented Computations in Logic Programming

Object-Oriented Computations in Logic Programming

Andrea Omicini, Antonio Natali
When interpreted as a model for structuring programs and organizing computations, the object-oriented paradigm can be thought as a set of abstractions independent of the host language. By generalizing the notion of object state configuration with respect to that embedded in languages based on assignment, this paper explores a relational approach to object-oriented programming. An object-oriented model based on the notion of object as structured logic theory, is introduced, allowing instance creation and configuration as well as computations with partially configured objects. The model is founded on an abductive framework rooted in the basic class/instance model of O-OP, which reconciles dynamic object creation with the declarative reading of LP. Meta-level constraints provide the computational support for the abstract model based on abduction. A simple first-order logic language implementing this model is presented, along with some examples of object-oriented logic computations dealing with intra- and inter-object constraints and with partially specified instances.
Object-Oriented Programming, Lecture Notes in Computer Science 821, pages 194-212, 1994.
Mario Tokoro, Remo Pareschi (eds.), Springer-Verlag
8th European Conference (ECOOP'94), Bologna, Italy, 4-8 July 1994. Proceedings
@inproceedings{oolp-ecoop94,
	AcmId = {646152.679515},
	Author = {Omicini, Andrea and Natali, Antonio},
	Booktitle = {Object-Oriented Programming},
	Doi = {10.1007/BFb0052184},
	Editor = {Tokoro, Mario and Pareschi, Remo},
	Isbn = {3-540-58202-9},
	Issn = {0302-9743},
	Note = {8th European Conference (ECOOP'94), Bologna, Italy, 4--8~} # jul # {~1994. Proceedings},
	Pages = {194--212},
	Publisher = {Springer-Verlag},
	ScopusId = {2-s2.0-21344495678},
	Series = {LNCS},
	Title = {Object-Oriented Computations in Logic Programming},
	Url= {http://link.springer.com/chapter/10.1007/BFb0052184},
	Volume = 821,
	Year = 1994}