Microsoft Store
 

Oberon programming language


 

Oberon is a reflective programming language created in the late 1980s by Professor Niklaus Wirth (creator of the Pascal, Modula, and Modula-2 programming languages) and his associates at ETHZ in Switzerland. The name is from the moon of Uranus, Oberon.

Related Topics:
Reflective - Programming language - Niklaus Wirth - Pascal - Modula - Modula-2 - ETHZ - Switzerland - Uranus - Oberon

~ ~ ~ ~ ~ ~ ~ ~ ~ ~

Oberon is also, somewhat confusingly, the name of the Oberon operating system, written in Oberon, for the Ceres workstation (built around the National Semiconductor 32032 CPU) and for the Chameleon workstation. Oberon, the language, has now been ported to many other operating systems, and is even available for the Java platform, where Oberon source code compiles to source code in Java, or to bytecode for a Java virtual machine. The Oberon operating system is also available for several other hardware platforms than the original workstation.

Related Topics:
Oberon operating system - National Semiconductor 32032 - Chameleon - Java - Bytecode

~ ~ ~ ~ ~ ~ ~ ~ ~ ~

The design continued the Wirth tradition/strategy of attempting to simplify without loss of power. Oberon may be thought of as a Modula-2 with full object oriented class/object capabilities, though not exactly in C++ or Smalltalk style. On the other hand, Oberon omits variant records, as these now can be implemented more safely using type extension, and other features such as enumeration types and subrange types, found in older Wirthian languages and elsewhere.

Related Topics:
Wirth - Object oriented - C++ - Smalltalk

~ ~ ~ ~ ~ ~ ~ ~ ~ ~

Oberon is very much Modula-2 like in its syntax, but offers several interesting features. Perhaps the foremost is 'type extension' by which most of the reuseability of object classes is made available. Furthermore, 'binding to a type' is included, which ties what would in Smalltalk be called 'methods' to a type (ie, class), with the result being object orientation. As with other modern programming languages, garbage collection is an inherent part of the language. Procedures are also cleanly exportable.

Related Topics:
Modula-2 - Object class - Class - Object orientation - Garbage collection

~ ~ ~ ~ ~ ~ ~ ~ ~ ~

Oberon's feature simplicity leads to considerable space and coding efficiency for its compilers, as little provision is needed for features not included. The full language can be specified in something like a page of EBNF, the Oberon report is, at 16 pages, about 1/3 the size of the Modula-2 report, and one of the early full compilers was about 4000 lines long. In addition, compiler output is also smaller and faster, probably also due to reduced feature complexity. Entire Web browsers written in Oberon have fit on a single floppy disk.

Related Topics:
EBNF - Floppy disk

~ ~ ~ ~ ~ ~ ~ ~ ~ ~

 

~ Table of Content ~

Introduction
Design goals
Available implementations & further language variants
Hello World
External links

 

 

~ What's Hot ~


~ Community ~

History Forum
Come and discuss about History, Civilizations, Historical Events and Figures
History Web-Ring
A community of sites, blogs and forums dedicated to History. Do not hesitate to submit your site.