Note much of this discussion is actually about Oberon+ which does a reasonable job of improving the expressiveness, and removing some perhaps ugly aspects without overly complicating things.
Oberon is impressively readable and understandable.
Oberon+ does a good job of making a more "modern" language whilst keeping with the ethos of the original language.
set
, string
and array
built in. No map
though.} of name;
sayloop
and repeat
, are later removedoberon+
has method call style where the this
is passed in before the method name, making it explicit and specialDEFAULT
value for a type=
for equality and :=
for assignment name : type = value
style that seemed inspired by WirthPOINTER TO
. This uses more typical syntax in oberon+
with ^
EXIT
for break
VAR
thats similar to inout
or &
in C++. Can use IN
to get something like const
I've been seeing a lot of admiration for Wirth languages recently. I used Pascal back in 80s on pResearch Machines 480z. At the time it was impressive although I was more interested in z80 assembler as what I really wanted to do was develop games.
Much later at university I came across C I never looked back.
In 2024 the nice thing about the Wirth languages is simplicity and readability of the languages.