Instructor's Guide
intro,
components,
case study,
crossing boundaries,
styles,
platform,
summary,
Q/A,
literature
Subsections:
It is futile to hope for a single language or paradigm
to solve all problems.
Therefore, as our small case study concerning
multimedia feature extraction indicates,
components may differ in how they are realized.
Some components are better implemented using
knowledge-based systems technology,
whereas other components require the use of a systems programming
language such as C++.
Even within components it may be necessary to transgress
the language boundary. For example in Java applications,
wrapping legacy applications or operating system-dependent
code is usually done using the native language interface.
In this section we will look at some studies
(executed within the hush framework)
that exemplify a multi-paradigm and multi-lingual approach.
We will first look at the issues that arise when embedding
a logic (that is Prolog) interpreter.
Then we will extend the embedded logic with objects
that may correspond to (native) objects in the host language,
that is C++.
These sections may safely be skipped by readers
not interested in logic programming.
Finally, we will look at how to realize corresponding
collections of objects in (native) C++ and Java.