-
- Oberon ist sowohl ein Programmiersprache, als auch ein Betriebssystem, welches von N. Wirth
und J. Gutknecht an der ETH Zürich entwickelt wurde.
Die Programmiersprache Oberon basiert auf den bekannten Vorgängern
Pascal und Modula-2. Oberon bietet die bekannten Prinzipien der getrennten
Compilation mit starker Typprüfung über Modulgrenzen hinaus.
Durch das Modulkonzept ist zudem ein Geheimnisprinzip realisiert.
Im Gegensatz zu Modula-2 muß das Definitionsmodul nicht manuell erstellt werden.
Der Browser kann auf Wunsch ein solches generieren.
Die größte Neuerung ist die erweiterbare, objektorientierte
Programmierung (EOOP). Diese ist durch Typerweiterung (Vererbung)
und die Typprüfung zur Laufzeit umgesetzt. Oberon-2 bietet zudem
typgebundene Prozeduren (Methoden), read-only Export und dynamische Arrays.
Oberon wurde entworfen um große Projekte zu realisieren und eignet sich
damit gut zur Entwicklung von Betriebssystemen (Oberon System selbst, ETHOS,
Mithril, Oberon/F), Compilern und Anwendungsprogrammen. Obwohl es um einiges
einfacher als seine Vorgänger ist, ist es doch sicherer (beim Umgang mit
Pointern) und sehr viel flexibler als Pascal und Modula.
Die Programmiersprache Oberon in Stichworten:
- Starke Typprüfung
- Module mit typegeprüften Schnittstellen und getrennter Compilierung
- Typerweiterung, welche objektorientierte Programmierung ermöglicht
- Typegebundene Prozeduren (Methoden), read-only Export von Variablen
- Unterstützung von Typtests zur Laufzeit
- Zuweisungskompatibilität zwischen allen numerischen Typen (gemischte Ausdrücke)
- String Operationen
Eine gelungene Einführung in die Programmiersprache Oberon gibt das Buch von
Reiser und Wirth. Die weiterführenden Aspekt der objektorientierten
Programmierung werden sehr gut in dem Buch
von Mössenböck dargestellt.
Oberon Compiler existieren für praktisch alle gängigen Betriebssysteme
(siehe Guy Ladens Oberon Seite).
Das Oberon System ist ein vollwertiges Betriebssystem.
Einige Stichworte:
- Single-Process Multitasking
- Garbage Collector - Speicher wird automatisch freigegeben, wenn er nicht mehr benötigt wird
- Kommandos: Prozeduren können als Programme gestartet werden
- Dynamisches Laden: Module werden zur Laufzeit (wenn benötigt) an das System 'gelinked'
- Textelemente: es können eigene 'Buchstaben' definiert werden, z.B. ein
Minesweeper Spiel (ähnlich OLE und OpenDOC)
- Grafische Benutzeroberfläche (Screen Shot 43kB)
Alle Oberon Systeme enthalten einen schnellen Oberon(-2) Compiler, Entwicklertools,
Editor mit Layoutfunktionen, Grafikprogramme (Pixel/Vektor), diverse Beispiele
und Online-Dokumentationen.
Momentan existieren zwei Oberon Systeme, System3 und
System V4.
Der Entwurf von System3 basiert vollständig auf persistenten Objekten und
beinhaltet das Gadget Userinterface.
System V4 versucht sich an das Einstein Prinzip zu halten:
"Mach es so einfach wie möglich, aber nicht einfacher!",
was nicht immer ganz einfach ist, aber das System V4 kommt diesem sehr nahe.
Ein besonderer Vorteil der Systeme ist die extrem hohe Kompatibilität der Umsetzungen untereinander.
Es gibt vom System V4 Umsetzungen für AlphaAXP, Amiga, DOS, HP/PA-Risc/HP-UX,
IBM-RS6000, Linux/PC, Mac, NeXt, PowerMac, Sun-Sparc/Solaris, Windows (NT), ...
(siehe Guy Ladens Seite).
Wird ein Programm auf einer der Umsetzungen entwickelt, so kann es ohne Änderungen
auf jeder andere genutzt werden, was natürlich auch für alle Datenfiles gilt.
Möchte man mit dem Oberon System V4 arbeiten, so sollte man sich unbedingt das Buch
The Oberon System : User Guide and Programmer's Manual ansehen.
-
-
Oberon System V4 für den Amiga V1.3
Das Oberon System V4 gibt es in einer Umsetzung für den Amiga (O4A). Diese wurde von
Stefan Ludwig und
Claudio Nieder
begonnen und wird zur Zeit von mir weitergeführt.
O4A ist, wie alle O4 Umsetzungen, Freeware. Es kann beliebig weiterverbreitet und genutzt werden, solange damit keine kommerziellen Interessen
Verbunden sind. Das (C)opyright liegt bei Ralf Degner, Claudio Nieder, Ralf Degner und beim
Institut für Computersysteme der
ETH Zürich.
Sollten Bugs, Wünsche oder Anregungen auftauchen, so möge man bitte mich, wenn möglich via
EMail, benachrichtigen.
Die Heimat von O4A ist der Server der ETHZ. Dort findet man im
Verzeichnis für den Amiga
stets die aktuelle Version von O4A.
Oberon.lha
(ca. 1,2 MB) ist das Hauptpaket,
Oberon-Src.lha
(ca. 700 kB) enthält die Quelltexte und
Oberon-NonFPU.lha
(ca. 100 kB) benötigt man, wenn man keine FPU besitzt.
Zusätzlich gibt es
Oberon-Fonts.lha
(ca. 390 kB), welches zusätzliche Bildschirmschriften, sowie die Pr3
Druckerschriften enthält. Sind die Pr3 Schriften installiert, so werden
diese bei der Druckerausgabe genutzt, sonst werden normale PS-Schriften eingesetzt.
Die neuste Version von O4A erscheint auch stets auf dem Aminet und damit auch auf den Aminet CDs.
Voraussetzungen für O4A:
- Amiga mit OS2.0 oder höher
- mindestens 68020 Prozessor
- FPU für REAL-Typen (ohne FPU ist Oberon-NonFPU.lha nötig)
- mindestens 1,5 MB freies RAM, 2,5 MB empfohlen
- 3,5 bis 8 MB Platz auf der Festplatte
Mit den Oberon Systemen arbeitet es sich besonders gut mit hohen Auflösungen. Daher macht sich
eine Grafikkarte gut oder man sollte Autoscroll nutzen. Am besten läuft O4A mit 16 (oder mehr) Farben.
O4A ist ein vollwertige Oberon System V4 Umsetzung (Screen Shot 43kB) mit allen üblichen Programmen.
Das System läuft in einem eigenen Task und somit steht, dank des guten Multitaskings des Amigas,
einer gleichzeitigen Nutzung von Amiga OS und O4A nichts im Wege. Besonderheiten der Amiga Umsetzung sind die dynamische
Speicherverwaltung, Unterstützung des Amiga Clipboards, sowie die Möglichkeit auf IFF Files
zuzugreifen. O4A läuft sowohl auf einem eigenen Screen, als auch
auf jedem Public Screen.
Das O4A Paket enthält:
- einen vollwertigen Oberon-2 Compiler
- Entwicklertools (Browser, Analyzer, Disassembler)
- XE, einen komfortablen 'Editor' mit Layoutfunktionen
- Kepler, ein objektorientiertes 2D Zeichenprogramm
- Paint, ein einfaches pixelorientiertes Malprogramm
- eine Menge weiterer Tools (Draw, RX, AsciiCoder, ...)
- diverse Textelemente
- VT100 Terminal-Emulation
- Spiele: Tetris und Minesweeper
- Beispielquelltexte und Online-Dokumentation
Zusätliche Pakete:
- Dialogs (ca. 240 kB)
- erweiterte grafische Dialoge, ein sehr interessantes Programmbeispiel
- Expressions (ca. 130 kB)
- mathematische Ausdrücke in Oberon-Text-Dokumenten
Coco (ca. 130 kB)
- Compiler Generator
Mit der Version 1.0 werden alle Quelltexte von O4A veröffentlicht, einschließlich des
gesamten Oberon-2 Compilers. Diese Quelltexte dürfen nicht in kommerzielle Produkte integriert werden.
Sollten Sie eine interessante Änderung vornehmen (und es gibt noch einiges zu verbessern),
teilen Sie mir dies bitte mit, damit alle O4A Nutzer davon
profitieren können. Neue Releases dürfen nur von den Autoren von O4A zusammengestellt werden.
Dank Florian Faber gibt es auch eine kleine Mailingliste für O4A. Einfach eine EMail mit
SUBSCRIBE Oberon4Amiga im Textteil
an ListServ@faba.han.de und schon ist man dabei.
Mails an diese Liste sollten möglichst in Englisch verfasst sein.
Von Zeit zu Zeit werde ich in dieser Liste Tips zu O4A posten.
-
-
- Amiga-Oberon ist ein vollwertiger kommerzieller Oberon-2 Compiler für das Amiga-OS.
Der Compiler enthält einen optionalen Garbage-Collector, Codeoptimierung, Codegenerierung
für 68000/10/20/30 und FPU, Interface-Module für das Amiga-OS, sowie einen
eigenen Editor. Ein Debugger ist seperat erhältlich.
Anhand einer Demo-Version,
welche nur kurze Quelltexte verarbeitet, kann man sich von
der Leistung des Compilers Überzeugen.
Möchte man die Autoren über auftretende Bugs informieren oder Vorschläge
für Verbesserungen äußern, so sollte man hierzu das Programm
OReport benutzen.
-
- Ein weiterer Oberon-2 Compiler für das Amiga-OS, welcher direkt 68000'er Code erzeugt, ist Oberon-A.
Oberon-A ist Freeware. Man findet den Compiler im
Oberon-Verzeichnis des Aminets.
Für Oberon-A gibt es eine Mailingliste. Um Informationen hierzu zu bekommen muß man eine EMail an
oberon-a-request@wossname.apana.org.au
mit HELP im Textteil schicken.
- Für das
Optimizing Oberon-2 Compiler
(OOC) Projekt ist ein Back-End für den Amiga in der Entwicklung.
- Zudem gibt es noch Oberon to C Umsetzer, wie z.B.
O2C, die auf dem Amiga genutzt werden können.
-
- Das Aminet ist DER Platz für Amiga PD und Sharewaresoftware. Mit ca. 20 aFTP-Servern
weltweit, vielen Mailboxen und der alle 2 Monate erscheinenden CD ist für eine schnelle
und weite Verbreitung gesorgt. Auf dem Aminet gibt es das Verzeichnis
dev/obero,
in dem man unter anderem das Oberon System V4 und Oberon-A findet, sowie viele andere
interessante Sachen zum Thema Amiga und Oberon.
(alles zum Stichwort Oberon)
Möchte man das Aminet regelmäßig nutzen, so sollte man sich unbedingt ADT, das Aminet Download Tool, ansehen.
ADT zeigt einem stets die neu erschienenen Programme an, seitdem man das letzte mal nachgesehen hat, informiert über aktuelle
Meldungen und ermöglicht ein einfaches Downloaden von Programmen. ADT gibt es für
viele Unix Maschinen und natürlich auch
für AmiTCP.
AMOK - Amiga Modula Oberon Klub:
- Der Amiga Modula Oberon Klub ist ein loser Zusammenschluß von Leuten, die sich für
den Amiga und die Programmiersprachen Modula-2 und/oder Oberon begeistern. Der Klub hat eine
PD-Serie mit über
110 Disketten voll mit Programmen und Quelltexten zusammengestellt.
AMOK hat auch eine vorwiegend deutschsprachige Mailingliste, in der Fragen rund um das
Thema Amiga und Oberon diskutiert werden. Einfach eine EMail an
majordomo@listserv.uni-stuttgart.de
schicken, in der im Textteil (nicht unter Subject)
SUBSCRIBE AMOK-L user@host.do.main
steht.
-
- Bisher gibt es keine Umsetzung von System3 oder Oberon/F für den Amiga und es sind auch
in näherer Zukunft keine zu erwarten. Es gibt aber eine Möglichkeit diese beiden Programme
auf dem Amiga zu nutzen. Die Lösung heißt
Shapeshifter, der Apple Macintosh
Emulator. Auf dem Server der ETH-Zürich findet man die Mac Version vom
System3
und die Ausbildungsversion von
Oberon/F, die beide unter
Shapeshifter problemlos funktionieren. Natürlich kann eine Emulation nie eine
Ideallösung sein und man sollte daher möglichst die direkte Umsetzung des
Oberon Systems V4 nutzen.
Oberon/F (F steht für Framework) ist ein kommerzielles Produkt, bei dem versucht wurde,
die besonderen Möglichkeiten der Oberon Systeme auf der Grundlage eines gegebenen Betriebssystems
zu realisieren. So können mit Oberon/F 'stand alone' Anwendungen erzeugt werden.
Ein Ausbildungsversion, die auch zum Kennenlernen und für den privaten Gebrauch
genutzt werden darf, ist frei erhältlich. Umsetzungen existieren für Windows und
den Apple Mac.
-
- Programmieren in Oberon : das neue Pascal
Martin Reiser, Niklaus Wirth
Addison-Wesly, Bonn 1994, ISBN 3-89319-657-9 (auch in englisch erhältlich)
- Eine grundlegende Einführung in die Programmierung, insbesondere in Oberon.
Die Beispiele beziehen sich zum Teil auf das System.
Die Ergänzungen von Oberon-2 werden nur gestreift.
- Objektorientierte Programmierung in Oberon-2
Hanspeter Mössenböck -2. Auflage-
Springer, Berlin 1994, ISBN 3-540-57789-0 (auch in englisch erhältlich)
- Dieses Buch ist eine sehr gelungene Einführung in die objektorientierte
Programmierung, die anhand von Oberon-2 erörtert wird. Grundlegende Kenntnisse
einer höheren Programmiersprache werden vorausgesetzt, über das
System braucht man nichts zu wissen.
- The Oberon System : User Guide and Programmer's Manual
Martin Reiser
Addison-Wesly, New York 1991, ISBN 0-201-54422-9
- DAS Buch für Nutzer und Programmierer des Oberon Systems V4.
Man kommt auf Dauer kaum um dieses Buch herum. Leider ist es etwas
veraltet (V1), was aber durch Online-Doku weitgehend ausgeglichen wird.
- Projekt Oberon : the Design of an Operating System and Compiler
Niklaus Wirth, Jürg Gutknecht
ACS Press, New York 1992, ISBN 0-201-54428-8
- Hier wird der innere Aufbau des Systems beschrieben.
Hauptsächlich für Leute interessant, die sich mit Compilerbau
und Entwurf von Betriebssystemen beschäftigen.
- CD-ROM: Oberon !
zusammengestellt von Dr. Josef Templ -2. Auflage-
Addison-Wesley, Bonn 1995, ISBN 3-89319-886-5
- Dies ist eine CD-ROM mit einer Zusammenstellung aller Umsetzungen der Oberon Systeme,
einigen Beispielprogrammen und Demos von anderen Oberon Produkten.
Besonders lohnenswert, wenn man Oberon auf mehreren Plattformen nutzen möchte.
Für den nur Amiga Nutzer weniger interessant.
Interessante Links:
-
-
-
- DINO - Deutschsprachige Seiten im WWW, thematisch sortiert
- YAHOO - Englischsprachige Seiten im WWW, thematisch sortiert
- Alta Vista - Suchen im WWW und Usenet
- WhoWhere? - Leute suchen im Internet
- Lycos - Suchen im WWW
- IQ - der intelligente Anzeigenmarkt
- Liszt - Mailing Listen
- Udos Seite - Weitere interessante Links