The programming language Oberon is an evolution of the well known predecessors Pascal and Modula-2. Oberon features the established principles of separate compilation with strong type checking even across module boundaries. The module concept provides for information hiding. In contrast to Modula-2, the definition modules are not explicit, but generated automatically by a Browser tool. The browser operates on the compiler respresentation of the module interface.
Oberon provides static record type extensions (single inheritance), polymorphy and run-time type information for extensible, object-oriented programming (EOOP). The upward compatible programming language Oberon-2 adds type bound procedures (methods), read-only export and dynamic arrays.
Oberon was designed for programming in-the-large and served well to develop several operating systems (Oberon System itself, ETHOS, Mithril, Oberon/F), compilers and tools. Although much simpler than its predecessors, Oberon is safer (in respect to pointers) and much more flexible than Pascal and Modula.
The programming language Oberon in keywords:
The book from Reiser and Wirth gives a nice introduction to
the programming language Oberon. The advanced aspects of object-oriented
programming are discussed in the book from Mössenböck.
Oberon compilers exist for all popular operating system
(see Guy Laden's Oberon page).
The Oberon System is a full operating system. Some keywords:
All Oberon Systems contain a efficient Oberon(-2) compiler, development tools,
program and document editor, drawing programs (pixel/vector), many examples
and online documentation.
Currently there are two Oberon Systems, System3 and
System V4. The design of System3 is fully based on persistent
objects and features the Gadget user interface.
System V4 sticks with the old Einstein principle:
"make it as simple as possible, but not simpler!",
which sometimes is simply not possible to achieve, but V4 comes very close.
A special advantage of the Oberon System is the source compatibility of Oberon
programs and the binary compatibility of data including hypertext and graphics,
independent for what platform they were developed.
System V4 implementations exist for AlphaAXP, Amiga, DOS, HP/PA-Risc/HP-UX,
IBM-RS6000, Linux/PC, Mac, NeXt, PowerMac, Sun-Sparc/Solaris, Windows (NT), ...
(see Guy Laden's page).
To work with the Oberon System V4 you should have a look at the book
The Oberon System : User Guide and Programmer's Manual.
The Oberon System V4 exist in an implementation for the Amiga (O4A).
O4A was started by Stefan Ludwig
and Claudio Nieder.
Currently I'm responsible for the maintenance.
O4A is like all O4 implementations, freeware. It is (C)opyright 1990-96
Claudio Nieder, Stefan Ludwig, Ralf Degner and the
Institut for Computer Systems at the
ETH Zürich.
You can use it in any way you like but you must not include any part of it in a
commercial product.
Please report any questions or bugs encountered to Ralf Degner
using EMail.
The home of O4A is the server of the ETHZ.
There you will find a
directory for the Amiga.
Oberon.lha
(about 1.2 MB) is the main part,
Oberon-Src.lha
(about 700 kB) contains the full source code and
Oberon-NonFPU.lha
(about 100 kB) is required to use O4A without FPU.
Oberon-Fonts.lha
(about 390 kB) contains additional screen and Pr3 printer fonts. If the Pr3 fonts are not
installed O4A will use normal PS fonts.
You will find O4A on the Aminet and on the Aminet CDs, too.
Requirements for O4A:
O4A is a full implementation of the Oberon System V4 (Screen Shot 43kB) with all usual programs. The system runs in its own task and therefore, thanks to the great multitasking of the Amiga, you can use O4A and the Amiga OS at the same time. Specific features of the Amiga implementation are its incremental heap allocation, support of the Amiga clipboard and the possibility to access IFF files. You can use O4A at a private screen or at any public screen.
The O4A package contains:
Additional archives:
Since version 1.0 the full source code of O4A is released including the Oberon-2 compiler. If you want to contribute to the system by improving it, please let me know.
Thanks to Florian Faber we have a small mailing list for O4A. Send an EMail with SUBSCRIBE Oberon4Amiga in the text part to ListServ@faba.han.de.
Oberon/F (F stands for framework) is a commercial product which tries to realise the special possibilities of an Oberon System on-top of a given operating system. Oberon/F can create 'stand-alone' programs. You can download an educational version for test purposes and for private use. Oberon/F implementations exist for Windows and Aplle Mac.