Active Oberon is a general purpose programming language developed during 1996-1998 by the group around Niklaus Wirth and Jürg Gutknecht at the Swiss Federal Institute of Technology in Zürich (ETH Zurich). It is an extension of the programming language Oberon.[1] The extensions aim at implementing active objects as expressions for parallelism. Compared to its predecessors, Oberon and Oberon-2, Active Oberon adds objects (with object-centered access protection and local activity control), system-guarded assertions, preemptive priority scheduling and a changed syntax for methods (named type-bound procedures in Oberon vocabulary). Objects may be active, which means that they may be threads or processes. Unlike Java or C#, objects may be synchronized not only with signals but directly on conditions. This simplifies concurrent programs and their development.

Active Oberon
ParadigmsImperative, structured, modular, object-oriented, concurrent
FamilyWirth Oberon
Designed byNiklaus Wirth, Jürg Gutknecht, Patrik Reali, A. Radenski
DeveloperETH Zurich
First appeared1998; 26 years ago (1998)
Typing disciplineStrong, hybrid (static and dynamic)
ScopeLexical
Implementation languageOberon
PlatformIA-32AMD64
Influenced by
Oberon, Object Oberon, Oberon-2

As it is tradition in the Oberon world, the Active Oberon language compiler is implemented in Active Oberon.[2] The operating system, especially the kernel, synchronizes and coordinates different active objects.

Active Oberon was renamed Active Object System (AOS) in 2002,[3] then due to trademark issues, renamed Bluebottle in 2005, and then renamed A2 in 2008.

An Active Oberon fork is the language Zonnon.

See also

edit

References

edit
  1. ^ Gutknecht, Jürg (1997). Do the Fish Really Need Remote Control? A Proposal for Self-Active Objects in Oberon. Joint Modular Languages Conference (JMLC). pp. 207–220. CiteSeerX 10.1.1.45.1126.
  2. ^ Reali, Patrik (2003). Using Oberon's active objects for language interoperability and compilation (PhD). Swiss Federal Institute of Technology, Zürich (ETH Zurich).
  3. ^ Muller, Pieter Johannes (2002). The active object system design and multiprocessor implementation (PDF) (PhD). Swiss Federal Institute of Technology, Zürich (ETH Zurich).
edit