[1-6] Free Object-Oriented Systems for Prolog

OL(P), Object Layer for Prolog, is an object-oriented extension to
Prolog.  It provides an object-oriented structuring and reuse
mechanism for Prolog in a manner that preserves performance and
semantics. The object-oriented layer is compiled into Prolog without
introducing any side-effects.  OL(P) takes the view of objects as
collections of predicates (called methods).  To Prolog, OL(P) 1.1 adds
objects with methods, data encapsulation, instances, and multiple
inheritance. Object methods can access Prolog predicates and vice
versa. The OL(P) incremental compiler translates OL(P) programs to
Prolog programs that don't need runtime interpretation (e.g., no
search is needed for inheritance).  OL(P) 1.1 comes with prepared
installation for SICStus Prolog and QUINTUS Prolog (both on UNIX),
documentation, simple built-in project management, some libraries,
and example programs. The source is included, so you can port OL(P)
to different platforms, different Prolog systems, and different
logic programming languages. OL(P) is available by anonymous ftp
from parcftp.xerox.com:/ftp/pub/ol/ [13.1.64.94]. Written by Markus
P.J. Fromherz <fromherz@parc.xerox.com>. 

LogTalk is a free object oriented extension to the Prolog programming
language. It is based on a reflexive architecture intended to provide
an open system, easily tailored to user needs. It implements simple
inheritance and a delegation mechanism. Logtalk enables users to
define new types of slots, each one with its own semantics, that can
be reused by any object. It includes features for event-based
programming. This enables the creation of elegant solutions to
represent and maintain relations that restrict the internal state of
participating objects. Logtalk (and more information about it) is
available using the URL
   http://cygnus.ci.uc.pt/logtalk/logtalk.html
For more information, write to the author Paulo Moura <pmoura@cygnus.uc.pt>. 

See Common ESP (CESP) in [2-1] and BeBOP in [2-3].
Go Back Up

Go To Previous

Go To Next