A resource for the Oberon-07 language

In 2004 N. E. Wirth released electronic revisions of his books for Oberon: Programming in Modula-2, Fourth Edition was revised as Programming In Oberon, Algorithms and Data Structures was revised for Revised Oberon (1989-1996), Project Oberon was updated with an Appendix describing gadgets, and Compiler Construction was revised.

MODULE hello; (*DEE 2016-02-06/2016-08-15*)
  IMPORT Texts, Oberon;
  VAR W: Texts.Writer;
  PROCEDURE world*;
  BEGIN Texts.WriteString(W, "hello, world");
    Texts.Append(Oberon.Log, W.buf)
  END world;

BEGIN Texts.OpenWriter(W)
END hello.

ORP.Compile hello.Mod /s ~

After these books were released, a new compiler was designed, and a description of it published electronically in 2007 which also described an extension of Oberon-SA (Technical Memo Nr. 2, 1998/1999) as a simplification and revision of Oberon (1996). Later in 2008, a formal report was released based on it, revising the October 1990 Revised Oberon Report (not including the November 1990 and Reiser PIO 1992 additions and corrections). A couple months later, he revised the document on the compiler design. The compiler paper described a rewrite of the model helicopter implementation for the DEC StrongARM DS1035 and FPGA XC620 begun in 1995, using what was now called Oberon-07.

In 2010, work on a new FPGA design led to a revision of the Oberon-07 Report in 2011 and a revision of Compiler Construction. This design was moved to the Xilinx Spartan-3 in 2013. A 1 October 2013 revision of the 2011 Report (summarized 20 November 2013), and a revision of Project Oberon (2005), now released as the Second Edition.

Multiple revisions to the 2013 Report have been published, the current one being 10 May 2016 (labeled 3 May). Work continues on Compiler Construction and the code base of Project Oberon 2013.


Join us in the #oberon channel of chat.freenode.net to discuss all things related to Wirth and Oberon. Also, see Usenet: comp.lang.oberon. Finally, the ETH Oberon mailing list: https://lists.inf.ethz.ch/mailman/listinfo/oberon.