Lacking Natural Simplicity

Random musings on books, code, and tabletop games.

The School of Niklaus Wirth: The Art of Simplicity

I've just finished The School of Niklaus Wirth: The Art of Simplicity, by Laszlo Boszormenyi (Editor), Jurg Gutknecht (Editor), and Gustav Pomberger (Editor).

This was an excellent retrospective of Niklaus Wirth's work, covering the many important (and sometimes neglected) innovations he and his coworkers created. Although it was published in 2000 it is still a very interesting and inspiring read.

Niklaus Wirth is perhaps best known for Pascal. I learned Pascal early on in my computing career, and found it much more to my taste than BASIC, the language I had the most experience with previously. I programmed in Apple Pascal (based on UCSD Pascal) on the Apple II+, and used Pascal on the original Macintosh. Much of my instruction at college used Oregon Software's Pascal 2 system for VAX/VMS. I also had an opportunity to use Pascal at work, using Turbo Pascal on MS-DOS. While I found the expressiveness and power of C very attractive, I still found the simpler syntax and safer type system of Pascal very worthwhile, and missed it when writing C.

However, I found Wirth's later programming language, Oberon (see the original and revised language reports, and at OO, OR), and the operating system it was developed for, also called Oberon, to be even more interesting. While I never used the Ceres computer on which Oberon originally ran, I did used the later versions of the Oberon system that ran hosted on Linux. I was particularly inspired by the further development of Oberon-2, designed by Wirth and Hanspeter Mössenböck (see the language report, O2A, O2B), and used in a wonderful book, Object-Oriented Programming in Oberon-2, also by Mössenböck (OOP1, OOP2, and at OOP1A, OOP2A).

Unfortunately most of my work at that time involved Unix heavily, and it was difficult to write Oberon programs that interacted directly with Unix, because Oberon's APIs were quite different than those of Unix and C. (I've since found some Oberon compilers that work a little better on Unix machines, but most Oberon software continues to be specific to the Oberon system.

Alas, Oberon was indeed the overlooked jewel.

I wish more people had taken more lessons from Niklaus Wirth when designing the programming languages and operating systems that turned out to dominate the computer systems of today.

Print Friendly and PDF


Comments powered by Disqus