[comp.lang.smalltalk] PRIMAL implementation in an object oriented language

exiphm@eutrc3.urc.tue.nl (h.munk) (07/10/89)

Dear Everybody,

I have a question concerning the appropriateness of OOLs for the
implementation of a package for real-time continuous process
diagnostics.

The package, called PRIMAL (= Package for Real-time Interactive,
Modeling, Analyses and Learning) is a toolbox for performing
diagnostic tests on continuous processes, such as oil refinery
process units, chemical plant process units, etc.

PRIMAL enables an experimenter to design an experiment (choosing
signals to sample, sampling rate, shape and other characteristics
of test signals), acquire data, filter and analyze data, perform
model estimation, model validation, and, in the near future (Real
Soon Now, as Pournelle would tell), controller design and
validation. The pleasant thing about PRIMAL is its
interactiveness. The experimenter can design and re-design
experiments, analyze and use data in real-time: if you see that
your experiment is getting you where you want, you can re-design
test signals, put in more signals to sample, change filter
characteristics, use different model estimation methods, etc.
PRIMAL is setup in such a way that it is possible to try out
different data analysis tools running on the same data at the
same time, in real-time.

PRIMALs implementation is something like this:

on top of everything is a module called the monitor, which
interacts with the user, and which governs the running of other
modules.

the other modules are invoked by the monitor on user request, and
communicate with the user through the monitor.

All data is stored in data sets, a kind of meta-files. Each data
set has an associated type (vector, matrix, text, model and a few
others).

The current system is implemented in a FORTRAN-77 subset, and
runs on VAX/VMS. The source is some 150K lines of heavily
commented source code.

My question:

is it worth the trouble to re-implement PRIMAL in an object
oriented language. As you may have deduced from the foregoing,
PRIMAL is heavily compute bound, but computes on very specific
things. On the other hand, it is supposed to perform in real-
time, and I don't know if that's possible with current OOLs.

I am a virtual newcomer to OOLs, so I would like to receive any
comments on this. Please EMAIL, and I will post a summary around
august 15 (so please email before august 8).


+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
-                           -                                  +
+ Harm Munk                 + My boss doesn't understand what  -
- Institute ITP-TUE/TNO     - I'm doing as I don't understand  +
+ Horsten 2                 + him.                             -
- 5612 AX  EINDHOVEN        -                                  +
+ The Netherlands           +                                  -
- Phone +31(40)474741 or    -                                  +
+       +31(40)474517       +                                  -
-                           -                                  +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-