Programming Help for Oberon-2 Programming

Introduction to Oberon-2 Programming Language

Oberon-2 Programming is an version of Oberonn programming laguge which has additional featuers then oberons.The additional features of Oberon-2 are limited reflection and object oriented programming facilities,reintroduction of FOR Loop from Module-2 and open arrays as pointer base types.It was developed by Niklaus Wirth and Hanspeter Mössenböck in 1991.It is influed by many languages like Pascal,Module-2,Oberon etc.

Example of Oberon-2 Programming Language

MODULE Lists;

    (*** declare global constants, types and variables ***)

    TYPE
        List*    = POINTER TO ListNode;
        ListNode = RECORD
            value : Integer;
            next  : List;
        END;

    (*** declare procedures ***)

    PROCEDURE (l : List) Add* (v : Integer);
    BEGIN
        IF l = NIL THEN
            NEW(l);             (* create record instance *)
            l.value := v
        ELSE
            l.next.Add(v)      (* recursive call to .add(n) *)
        END
    END Add;

    PROCEDURE (l : List) Get* () : Integer;
    VAR
        v : Integer;
    BEGIN
        IF l = NIL THEN
            RETURN 0           (* .get() must always return an INTEGER *)
        ELSE
            v := l.value;       (* this line will crash if l is NIL *)
            l := l.next;
            RETURN v
        END
    END Get;

END Lists.

How to learn Oberon-2 Programming Language

Tutorial or Books for learning Oberon-2 Programming Language:

Download Oberon-2 Programming software from Here !!