Oberon

Oberon is a structured object oriented and procedural language in the Algol family that was introduced by Niklaus Wirth in 1988 alongside an operating system with the same name.

It was based on his earlier Modula 2 language but adds limited object-orientation but at the same time removes a lot of the M2 Language features in order to simplify the language and compiler.

There are descendant languages that some classify as Oberon and others as members of the Oberon family, we include the few implementations that actually run under OS/2 in some form here just to simplify things, it is not a taxidermy issue.

Oberon/0 is a simplified version of the language intended to be used in teaching compiler construction, it is therefore as much a descendant of PL/0 (simplified Pascal) as of Oberon proper and you are not meant to download a copy, but rather make one yourself.

Oberon07 is simply a name for the latest version of the Oberon standard and does not differ too much from the original, the last update to the Oberon 07 standard was in the summer of 2014.

OS/2 implementations

 * ETH Oberon System - Discontinued. Note that this is not just the compiler but the entire Oberon OS as a layer on top of OS/2.


 * Editor support
 * Enhanced Editor - Has syntax highlighting and some formatting features available as a separate download.

Win-OS/2 Implementations

 * BlackBox Oberon - Current Oberon Core version does not work, older versions however do work with Win32s installed.
 * Programmers Open Workbench - Aka POW!/16 - Open source

JavaScript

 * OberonScript - Can be run inside a web browser or by using the JavaScript Desktop Enabler.
 * Microsoft Oberon Script - Older version of the above, code appears to have gone missing.

Articles

 * A Discussion of Oberon by Paul Floyd (Aug 1998)

Publications

 * Niklaus Wirth: The Programming Language Oberon (1990)
 * Jürg Gutknecht & Niklaus Wirth: Project Oberon; The Design of an Operating System and Compiler Updated version from 2005
 * Jürg Gutknecht & Niklaus Wirth: Project Oberon; The Design of an Operating System and Compiler Updated version from 2013 (Not as well formatted as the earlier version)
 * Niklaus Wirth: From Modula to Oberon
 * Niklaus Wirth: Modula-2 and Oberon - Historical overview
 * Jürg Gutknecht & Michael Franz: Oberon with Gadgets - A Simple Component Framework
 * Jürg Gutknecht: Oberon, Gadgets and Some Archetypal Aspects of Persistent Objects
 * J. Marais: Design and Implementation of a Component Architecture for Oberon ETH Zürich 1996.
 * André Fischer & Hannes Marais:The Oberon Companion: A Guide to Using and Programming Oberon System 3 - 1997
 * Günther Sawitzki: Extensible Statistical Software: On a Voyage to Oberon
 * Archive of old Oberon Newsletter issues


 * Josef Templ: The Oberon Programming Language: The new Pascal - Introductory article
 * Peter H. Fröhlich, Michael Franz: Stand-Alone Messages: A Step Towards Component-Oriented Programming Languages
 * Michael Franz: Emulating an Operating System on Top of Another

Links

 * The MODulator - Modula-2 and Oberon articles from the gents behind the ModulaWare company in Switzerland, used to be a paper newsletter back in the day.
 * Pascal for small machines - Pascal and Oberon related blog


 * Standards
 * Oberon 07 Language Report - Summer 2014 edition.