[Oberon] Voyager, give me a chance ....

Felix Friedrich friedrich at gsf.de
Fri Aug 16 22:43:03 CEST 2002


Hallo everyone,

it seems to me as if the web page about Voyager has caused some confusion. 
So, though I am not the maintainer of Voyager (and though my english isn't 
perfect at all)  I will try to make some things clear or at least give my 
comments about it, since I have been using Voyager since quite a time now 
and have - fortunately - been taken part at the development.
Voyager is not an operating system, it is not redundant in the sense that 
it repeats things that have been worked out in Oberon already.
Voyager has been launched in 1992/93 , at a time when OberonS3 was not yet 
the "Standard" (not even existing?) and we started to work with OberonV4. 
We wanted to create a package that
a) is portable
b) is extensible
c) supports interaction, not only user-interaction but interaction between 
objects as Plots,Functions,Data .. (will comment on that below)
d) supports _stochastic_ simulation
e) supports _statistical_ data analysis. (is there any other ?)

Mainly for the reasons a),b) and  c) we have chosen Oberon as the Operating 
System and Programming Language, we had the Book "Project Oberon" in our 
hands and for some obvious reasons decided very quickly that Oberon was the 
right thing to take.
OberonS3 is capable of all we needed, but it is NOT
a) a data analysis system
b) a system for (stochastic) simulation

Voyager is a data analysis and (stochastic) simulation package, let me 
enumerate some of its content:
a) Stochastic / Statistic / MathLinAlg. basic functionalities
a1) Random Number Generators (quite a number of), Tests on Random Number 
Generators, Handling of generator seed etc. Mainly inspired by the works of 
Marsaglia.
a2) Statistic Items, like Regressions etc.
a3) Translation of BLAS and LAPACK (on a sideway , not originally part of 
Voyager)
b) Basic Object-Management.
b 1) In 1992 there was no S3 and no Gadgets, so own Objects had to be 
built, we unified them with S3 Objects some years later.
b 2) Update and handling mechanisms for _dependent_ objects (in a 
mathematical sense, like functions depending on parameters or plots 
depending on data etc. )
b 3) Handling of an own namespaces (but - in special cases - connected with 
the namespace of OberonS3). Voyager Objects can be addressed by names in a 
command script.
c) Interactive Graphics, very important,
c 1) Graphics in a layered architecture with coordinate systems (2d, 3d)
c 2) Interaction (like movable coordinate systems, interactive selection 
(data in all of their plots linked) etc., sending and consuming contents, 
sharing coordinate systems, sharing data, etc. )
c 3) Implemented Layers: Scatter1d, Scatter2d, Scatter3d, LinePlot, 
Histogram, Charts, BoxWhisker, Distribution, Shorth, MaxMass, SurfacePlot, 
Scales, Grids, Captions etc.
d ) Vectors (and Matrices), quite an important part, dynamic resizable 
vectors ofI all base type together with quite a lot of funtionality 
(calculate mean, ssq, add vectors and stuff like that).
e ) Some further support for Scanning Names, Finding Objects in name space 
etc., further tools.

I myself use Voyager (&Oberon) as base for AntsInFields: A Software Package 
for Stochastic Simulation and Bayesian Inference on Gibbs Fields. I use 
approx. as much functionality of Voyager as of Oberon itself, mainly the 
Vectors, name handling and all kind of graphics are taken from Voyager. 
AntsInFields provides some more graphics for Images (with moving coordinate 
systems and automatic updating when Markov Chains run etc., give me some 
time for more docu on my webpage).

I admit, that the documentation of Voyager is quite sparse, but - 
especially when you have someone to ask - it is a very useful tool. By the 
way - which is NO excuse - I get most of my informations by reading Modules.

To the end let me enumerate some of the applications that have been using 
Voyager up to now:
a) Bertin Plots, Plots (interactive) for middle (~<100) dimensional data
b) React: Some methods to reconstruct noised 1d-Data (I don't know much 
about it)
c) ww: Tools to create and analyze Time Series
d) antsPotts: Potts-Model (1d) reconstruction of noisy brain-data to 
identify stimulated regions (only experimental)
e) antsPotts2d: Pseudo_2d-Potts reconstructions for first-step denoising of 
mammographies (experimental)
f) AntsInFields
g) Voyager has (in its 2nd Version: VoyagerII and withing AntsInFields) 
been used for teaching quite a lot, interactive graphics seem to 
be  helpful things.
....

AntsInFields will come with easy-to-use Panels. There will be a 
Windows-Version with a (VISE)Installer, such that the user does not have to 
know anything about Oberon. I will try to give some more documentation, but 
you all know that one-person-projects don't leave much time...

Answers follow.

Chris wrote
>I have long maintained that persons who have been long and
>deeply involved in developing new 'systems' are unqualified to write
>an introduction to their project.  For obvious reasons they can't have
>an outsider's view.
I say: You are perfectly right with that.


Douglas wrote:

>Other statistical packages on the market are: SAS, SPSS,
>BMD, and others.  They all do linear regression, one-way
>analysis of variance and nonparametric statistics to name
>just a few of their capabilities.  Statlab is the only package
>that I know of (correct me here if I am wrong) that is
>written in the Oberon programming language.
There is (still?) another package: B2. But Voyager is the only package that 
does really interactive graphics.

Charles wrote:
>btw: The bar graph does not seem to follow the actual datapoints shown
>but that's not important right now. ;-)

It is a Histogram, the bin heights correspond to counted datapoints in some 
intervals, you cannot compare the graphics. By the way: The screenshot is 
about 7 years old.


>If you were to direct a random sampling of experienced PC computer
>users to the ETH Oberon Sys 3 website they would be confounded and
>annoyed attempting to determine exactly what N-O Sys 3 is and how
>to locate a stable fully functional version that accomodates their
>other existing installed software and hardware.

Right, but I could convince some of these people to use Oberon.


With the best greetings to all of you,

Felix.
--

Felix Friedrich

Institut für Biomathematik und Biometrie
GSF - Forschungszentrum für Umwelt und Gesundheit, GmbH
Ingolstädter Landstraße 1, D-85764 Neuherberg

Tel:      ++49 89 3187 2436
email:  friedrich at gsf.de

--




More information about the Oberon mailing list