Check out the new USENIX Web site.

Home About USENIX Events Membership Publications Students
Second USENIX Conference on Object-Oriented Technologies (COOTS), 1996

Highly Concurrent Distributed Knowledge Objects

K.L. Clark and T. I. Wang
Department of Computing, Imperial College, London


This paper introduces a distributed object oriented logic programming language, DK Parlog , in which each object, in addition to the normal procedural methods for accessing and updating state components, also has knowledge methods in the form of Prolog rules. The language is an OO extension of a distributed, multi-threaded, logic programming system. Encapsulation is by class definitions linked via single inheritance. Procedural method invocation is via asynchronous message send to the unique object identifier. Knowledge method invocation is via synchronous remote procedure call. Classes are also objects - they have their own state components and methods. An application in D Parlog consists of a collection of concurrently executing objects(classes and instances) distributed over a local area network.

The knowledge methods can be public or private, and can be dynamically modified by the procedural methods of the object using Prolog style knowledge base manipulation primitives. The dynamic knowledge of an object can be used as a declarative representation of part of its state.

This paper assumes some familiarity with concepts of concurrent object oriented programming and logic programming, ideally concurrent logic programming, but familiarity with Prolog will probably suffice.

?Need help? Use our Contacts page.

Last changed: 9 Jan 2003 aw
Technical Program
Conference Index