An Object-Oriented Platform for - ETH E

22,
.hdi 1991
DISS. ETHNr. 9396
«Visual
An
Prolog»
Object-Oriented
Interactive
Modeling
Platform for
and Problem
Solving
A dissertation submitted to the
SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH
for the
degree of
DOCTOR OF TECHNICAL SCIENCES
presented by
CARLO MULLER
Dipl. Informatik-Ing. ETH
born
July 18,1960
citizen of
Accepted
on
Prof. Dr. W.
Prof. Dr. J.
Luxembourg
the recommendation of
Schaufelberger,
Nievergelt,
1991
examiner
co-examiner
Abstract
This dissertation
presents «Visual Prolog»,
active model-based
human
expert
are
problem solving,
coupled
pert takes the creative
part
The
users
of «Visual
domain, visualize the
teract with the
the
screen.
built
of
on
an
object
computer provides
Prolog»
formulate
objects
involved in
objects by observing
The domain model is
in all contexts and
knowledge
object system
that
conceptual
a
and
a
machine, the
ex¬
es¬
concrete
model of their
of interactive
ented
programming,
the
in
an
object-oriented
the end
users
the
represent knowledge
back of conventional
-
is
single inheritance,
in
a
directly
designed
symbolic
compensated by
mouse-driven browsers
object
are
features of
the involved
The
and
object-ori¬
the
The
con¬
the
ability
major
draw¬
as
the lack of structure in the database of
the
support of class hierarchies based
hierarchies based
provided
well
con¬
require¬
objects.
Prolog, including
as
is
problem.
to meet the
human-readable form.
-
a
contrast to
Prolog environment,
Prolog systems
and
access
behavior
procedural
in their efforts to solve
has been
positive
versational nature of the interactive
with
on
formalism
correct
representation
equipped
object-oriented modeling, where, in
object system fully exploits
rules and facts
be
can
users
Prolog»
and in¬
manipulating graphical symbols
expressed
Objects
problem
problem instance,
guarantees that its visual
helps
of «Visual
ments
a
the external aids
and
man
top of the language Prolog. The model specifies the
declarative
to
management
skills of
and visualization capa¬
problem solving.
sistent with its internal state.
The
problem-solving
In this synergy of
while the
sential for successful human
software environment for inter¬
in which the
with the data
bilities of modern workstations.
a
on
on
object nesting. Graphical
for both hierarchies.
9
Abstract
10
A
ready-to-use
alization of
class
objects
library implements
the
complete
and the interaction with them.
model inherit their visual behavior from this
focus
on
with the
the
The «Visual
for
representation
implementation
Prolog,
computer.
The classes defined in the
library,
user
includes
an
so
that the model
can
and need not be concerned
knowledge
details of the visual
Prolog» implementation
extended
low the direct
host
of domain
framework for the visu¬
interface.
interpreter
and
a
compiler
by modules, types and global variables. The extensions al¬
access to
Most
the
graphics
parts of «Visual
toolbox and the
Prolog*
are
operating system
written in this
of the
language.
Kurzfassung
«Visual
Prolog*
basierte Losen
Software-Umgebung,
ist eine
Fahigkeiten
Arbeitsplatzrechner,
Daten
zu
von
ative Rolle.
Computer
folgreichen
«Visual
von
Moglichkeiten
verwalten und visuell darzustellen.
moderner
Bei dieser
Experte
die kre-
stellt die externen Hilfsmittel bereit, die
zum er-
Problemlosen durch den Menschen
Die Benutzer
dell ihres
Experten
mit den
Mensch und Maschine ubernimmt der
Zusammenarbeit
Der
Sie verbindet die intellektuellen
Problemen unterstiitzt.
von
eines menschlichen
die das interaktive und modell-
Prolog*
notwendig
formulieren zuerst ein
konzeptuelles
Objekte,
Dann stellen sie die
Anwendungsgebietes.
sind.
Mo-
die in einem
konkreten Problem vorkommen, bildlich dar und arbeiten mit ihnen, indem
sie
grafische Symbole
Modell des
Anwendungsgebietes
mus, der auf der
bei der
Das
Objekts
Darstellung
konnen mit
Programmierung
Dazu
gehort
Benutzer im
von
«Visual
Formalis-
vom
dass seine vi-
zu
Objekte
ausgestattet werden.
Prolog*
entworfen.
nutzt die
Eigenschaft
Dialog
symbolischen,
garantiert,
wurde
Im
speziell
fur die
Gegensatz
zur
positiven
der interaktiven
Merkmale
interaktive, ob-
objektorientierten
haben die Endbeniitzer hier einen direkten
Objektsystem
die
Das
und deklarativem Wissen, welches den Beniitzern
jektorientierte Modellierung
Objekte.
objektorientierten
in alien Situationen und
des Problems hilft,
Objektsystem
Das
ist in einem
und beobachten.
mit seinem internen Zustand ubereinstimmt.
prozeduralem
Losung
manipulieren
Sprache Prolog aufbaut, beschrieben. Es bestimmt das korrek-
te Verhalten eines
suelle
auf dem Bildschirm
von
Zugriff
Prolog
auf die
voll
Prolog Umgebung, Fragen
aus.
der
beantworten, aber auch die Fahigkeit, Wissen in einer
Menschen lesbaren Form darzustellen.
Der
wichtigste
11
12
Kurzfassung
Nachteil konventioneller
tur in der
Datenbank
Klassen- und
von
aus
ren
von
zur
wird.
von
Regeln,
die
Vererbung,
jeglicher
wird durch die
Struk-
Unterstiitzung
Die Klassenhierarchie ba-
Objekthierarchie
Beide Hierarchien konnen mit
auf der Verschachte-
mausbedienba-
grafischen,
untersucht werden.
schliisselfertige
Eine
die
Objekten.
Werkzeugen
Fakten und
namlich das Fehlen
Objekthierarchien ausgeglichen.
siert auf der einfachen
lung
Prologsysteme,
Klassenbibliothek enthalt die
Visualisierung
und
zur
interaktiven
komplette Infrastruktur,
Bearbeitung
Objekte benotigt
der
Die Klassen, die im Modell definiert sind, erben ihr visuelles Verhalten
den Klassen dieser Bibliothek.
Darstellung
des
Dadurch kann sich das Modell auf die
Anwendungswissens beschranken,
und
muss
sich nicht
um
die Einzelheiten der visuellen Benutzerschnittstelle kiimmern.
enthalt einen
«Visual
Prolog*
Prolog,
welche durch Module,
Die
Interpreter
Erweiterungen ermoglichen
das
Betriebssystem
von
«Visual
Prolog*
Typen
und einen
und
globale
den direkten
Zugriff
des verwendeten Rechners.
sind in dieser
Compiler
Variablen
auf das
fur die
erganzt wurde.
Grafikpaket
Die meisten
Sprache geschrieben.
Sprache
und
Komponenten