Type-Safe Reflection and Encapsulation in Logic Programming

Christopher P. Higgins (Grifiith University)

One approach to objct-oriented logic programming is to amalgamate the object-level and the meta-level, treating objects as sets of formulas (theories) and message passing as querying the appropriate theory. However, the languages are untyped, so missing out on the benefits of a type system, and lack the means to encapsulate objects, so exposing all of the representation and implementation details of an object to the rest of the program. We develop a type system for object-oriented logic programming where meta-level to object-level reflection is type-safe, and where encapsulation of objects is enforced in the type system itself. This requires a typed meta-interpreter for amalgamated logic programming and to achieve this we introduce bounded polymorphic types based on inclusion and membership.

chris@cit.gu.edu.au


Click here to get Aladdin Ghostscript 5.10.

Click here to get Adobe Acrobat Reader 3.01.



Home

Overview

Table of Contents

Author Index

Credits



Last Update: 06/28/98
Web Author: Matthew Hurlbut
hurlbut@jerry.cs.uiuc.edu