Aviva Directory » Computers & Internet » Programming » Oberon

Another of the ALGOL family of languages, Oberon is a general-purpose programming language created by Niklaus Wirth in 1986.

Actually, Oberon was designed to serve as an implementation tool for the Oberon system, which was an efficient, concise operating system founded, by Wirth, on object-oriented programming. While visiting the Xerox Palo Also Research Center, Wirth, along with J. Gutknecht, decided to design and implement a new operating system, and to design it from scratch. In particular, it was to be a powerful system for personal workstations, as Wirth believed other existing operating systems were unnecessarily bulky.

The Oberon language was designed to be part of that system. However, it was not tied to the operating system. Compilers can be provided for machines running on a variety of operating systems.

Oberon is a descendant in the family of languages whose root is Algol 60, and whose other members include Pascal, Modula-2, and Euler, each of which Wirth played a key role in designing. Wirth was also the chief designer of Algol W, a successor of Algol 60.

Oberon was influenced largely by Modula-2. In creating the new language, a design goal was the provision of data type extensibility on the basis of data type and procedure. Wirth decided to accomplish this through a new language rather than implementing the features he was looking for in Modula-2 because he believed that the latter language had become too large. Another goal was to produce a language that was easy to learn, simpler to implement, and efficient.

Oberon continues to be maintained and regularly updated by Wirth, and ETH Zurich.

Free implementations of the Oberon language and operating system are available, some from ETH itself.

Also designed by Wirth, Oberon-2 is an extension of the original Oberon language, and currently, the Oberon implementation most used. Oberon-2 adds limited reflection and object-oriented programming facilities, open arrays as pointer base types, and read-only field export. It also reintroduces the FOR loop from Modula-2. Developed at ETH Zurich in 1991, it is a superset of Oberon, and fully compatible with it.

Oberon-2 compilers from ETH include versions for Linux, macOS, Microsoft Windows, and Solaris. There are implementations for Atari-TOS and AmigaOS. The Oxford Oberon-2 compiler understands Oberon-07 and Vishap Oberon.

In 2007, Wirth based Oberon-07 on the original version of Oberon rather than on Oberon-2. Compilers for several computer systems have been developed for Oberon-07.

Another variant of Oberon is Active Oberon, which ETH Zurich has released for the Bluebottle operating system, which was developed at ETH Zurich.

Other closely related languages include Component Pascal, a minor variant and refinement of Oberon-2 that offers a more expressive type system and built-in string support. Developed for Windows and classic Mac OS by Oberon Microsystems, Component Pascal was originally named Oberon/L. First released as Seneca, Oberon-V is a variant of Oberon designed for numerical applications on supercomputers.

Oberon, and any of its variants or implementations, compilers, editors, or tools designed to facilitate programming in the language, are the focus for this category. Oberon user groups, forums, tutorials, or guides are also appropriate resources.



Recommended Resources

Search for Oberon on Google, Bing, or Yahoo!