DOWNLOAD FREE OBERON

for: WINDOWS / LINUX

Computer pioneer Niklaus Wirth has died

Computer pioneer Niklaus Wirth died on 1 January 2024, just weeks before his 90th birthday. The long-serving ETH Professor of Computer Science achieved world fame by developing the Pascal programming language in the 1970s. In 1984, he became the only German-speaking computer scientist yet to have received the Turing Award, which is regarded as the Nobel Prize for computer science.

Николай Вальтерович Вирт

Niklaus Wirth was a major figure in the ETH research community and a pioneer in the development of programming languages. Computer science in Switzerland also has a lot to thank him for. (Photo: Niklaus Wirth)

Turing Award winner, computer pioneer, inventor of influential programming languages: Niklaus Wirth’s achievements and accomplishments in the field of computer science are far-reaching.  He is probably best known for the programming language he developed, Pascal. However, his impact extends far beyond that. Wirth’s work and passion played a fundamental part in developing the world of IT. To this day, his achievements have had a decisive influence on computer science and generations of programmers. According to his family, Wirth passed away peacefully on 1 January 2024.

Wirth had a key role in establishing computer science in Switzerland. He succeeded in bringing computer science innovations from the United States, then the country at the forefront of computer development, to Switzerland and helped computer science achieve a breakthrough as a separate research field and profession in the country, as ETH President Joël Mesot recalls: “In Niklaus Wirth, ETH Zurich has lost one of its greats: someone who not only did pioneering work in the development of programming languages, but was also one of the founding fathers of computer science in Switzerland and at ETH.”

Early passion for technology

Born in Winterthur on 15 February 1934, Wirth’s enthusiasm for technology was already evident in his childhood, when he developed a profound interest in aircraft construction and built his first radios and amplifiers. His passion led him to become a student at ETH Zurich, where he studied for a degree in electrical engineering and received an advanced federal professional diploma in the subject. Wirth completed his Master’s degree at the University of Laval in Canada in 1960. He first came into contact with computers, programming languages and compilers at the University of California in Berkeley.

It was there that he took up software; in 1963, he completed his doctorate in Berkeley under Harry Huskey on the generalisation of the Algol 60 programming language. After assistant professorships at Stanford University and the University of Zurich, he returned to ETH Zurich in 1968 as Professor of Computer Science, in which role he taught and researched until 1999. In the years 1976–1977 and 1984–1985, he spent time studying at Xerox’s Palo Alto Research Center (PARC).

In his 31 years at ETH Zurich, Wirth developed new programming languages such as Euler, PL360, Algol W, Pascal, Modula, Modula 2, Oberon and LoLa. He also built Switzerland’s first personal computers (PCs) and trained the first generation of Swiss computer scientists. Last but not least, he wrote several standard reference works that have been translated worldwide.

He received numerous honours, including the prestigious ACM Turing Award in 1984, which he was the first and so far only German-​speaking computer scientist to win. In 1988 he received the IEEE Computer Pioneer Award. Wirth’s law, which states that software slows down faster than hardware speeds up, is named after him.

Pascal – and the search for the powerful, simple language

For Wirth, but also for IT and the spread of the personal computer, 1984 was a special year: Apple introduced the Macintosh PC, IBM presented its IBM Personal Computer/AT and Wirth won the Turing Award – the highest prize in computer science, comparable to a Nobel Prize in the natural sciences or the Fields Medal in mathematics. Wirth received his award for developing several programming languages, including Euler, Algol W, Modula and especially Pascal.

Wirth’s most famous achievement is the programming language Pascal. Its main advantage is its simplicity and elegance. Pascal is based on the clear principles of structural programming formulated by the computer scientist Edsger W. Dijkstra, on a mathematical basis defined by the computer scientist Tony Hoare, and on the architectural implementation of the Algol-W ideas by Wirth.

This efficient language combined good programming practices with structured programming and data structuring, which explains why it quickly became a popular teaching language. Several generations of students at universities around the world – including ETH Zurich – gained their initial experience of programming with Pascal.

Wirth was never one to rest on his laurels – on the contrary. Pascal may be his best-known achievement, but his work goes much further: from the successor language, Modula-2, to the Oberon system and the “Lilith” workstation, a forerunner of later personal computers. Further developing and improving his programming languages was a lifelong project for Wirth.

What started with Euler finally ended with Oberon, a language featuring the object-orientation concept and type hierarchy, which was intended to be both as powerful and as simple as possible. Wirth wanted to invent something for the general public that would be at once both economical and understandable.

Oberon was more than just a language. It became an entire system, and in the end the book Project Oberon was published, its 500 or so pages describing the software, language and hardware – Wirth’s pride and joy: “Throughout my life, I have pursued the goal of developing a language that is as powerful as possible, yet as simple as possible. Oberon is the last link in this development chain,” Wirth said.

Lilith – and a commitment to computer science in Switzerland

Today, Switzerland plays an important role in computer science worldwide and makes many fundamental contributions both to its basic principles and to their application. Things looked different until the 1970s: while the first workstations had already been developed in the US and computer science was widely studied there, Switzerland lagged behind in both training and application. One example of this is Wirth’s Lilith, which was to arouse the industry’s interest only years later.


Source: ETH Zürich



* * *

Updates

Video (voice is in Russian, with English subtitles)

What is Free Oberon?

Free Oberon is a cross-platform integrated development environment for development in Oberon programming language, made in the classical pseudo-graphic style.

Compilation is done using the Ofront+ Oberon translator, the compiled console programs are executed independently or in the built-in cross-platform terminal emulator. Free Oberon uses the latest revision of the Oberon programing language (Oberon-07). The size of type CHAR is 2 bytes and it supports Unicode. The base modules were rewritten with this in mind: In, Out, Files, Texts, etc. The language extensions include pointers to arrays.

The IDE includes a cross-platform module Graph for graphics programming. It is built on top of Allegro5 library.

The interface of the IDE as well as the compiler error messages are translated in other languages. Anyone can add a language by editing a text file.

Free Oberon is free software and is shipped under GNU General Public License version 3 with source code. It can be compiled under Windows, GNU/Linux and other operating systems. Windows version contains a precompiled Ofront+ compiler, and truncated MinGW bundle, necessary for its operation. The compiled programs are “native” Windows applications and do not require additional DLL files to work.

Free Oberon is part of a larger project, which includes writing a series of textbooks on programming, creating educational materials, and the development of a native Oberon compiler and other programs with the aim of developing informatics as science and popularizing it as science among programmers and students.

Free Oberon, version 0.1.0

Installation

  1. To install on Windows, unpack the ZIP archive and run FreeOberon.exe.
  2. To install on Linux (Ubuntu, Debian, Mint), download ZIP-archive from GitHub or clone the repository and run install.sh with root privileges. Learn more in README.

Game of Life with colors made in Free Oberon
Game of Life with colors made in Free Oberon

Additional Information

The source code of the user programs are stored in the Programs directory, and the executable files are stored in the bin directory. To compile, a script file is used: data\bin\compile.bat (on Linux: data/bin/compile.sh), which you can edit if you like.

Please read the documentation to get used to the interface of Free Oberon more quickly. The editor can be switched to windowed mode, using the combination of keys [Alt+Enter], copy and paste can be done using [Ctrl+C] and [Ctrl+V]. The program trapped in a livelock can be stopped by pressing the [Ctrl+Break] key combination. Among others, the following modules are available: In, Out, Strings, Files, Math, Graph.

Feedback

Please write your questions and wishes to freeoberon@yandex.com