You're both missing the point maybe? Oberon the language was plenty good enough to create Oberon the OS which ran ETH Zurich for a decade or two. The University used the Lilith and Ceres workstations as their main system (as far as I know.) It wasn't a toy, it was the bleeding edge in it's day.
The point is that the functionality of current systems hasn't progressed much beyond what you could manage three or four decades ago despite Moore's law because complexity has eaten the gains.
To me it sounds like you and the other person were saying that Pascal and Oberon weren't "large enough". I'm just pointing out that they were large enough that people can and did do serious work with them, and that, in many ways, our modern systems aren't that much better than what they achieved with those relatively simple and primitive tools. They weren't perfect, both languages grew and became more elaborate, that's true, but the original systems were solid.
Thanks. The argument was, that Wirth's original language designs were less successful than the extenden versions designed by others, e.g. Boarland. The original designs are undoubtedly sufficiently expressive to build things of decent size, but apparently too little attractive for wide adoption. Not surprisingly, variants of all Wirth languages have quickly emerged; in the case of Oberon, for example, these are Oberon-2 by Mössenböck or Component Pascal by an ETH spin-off.
You're welcome. I don't look at usernames on HN so it didn't occur to me until now that it's your project. It really does seem like a well-considered extension of Oberon, I'm going to check it out in more depth later.
> The argument was, that Wirth's original language designs were less successful than the extended versions designed by others, e.g. Boarland.
In a sense, the extensions of his work are the success, eh?
> The original designs are undoubtedly sufficiently expressive to build things of decent size, but apparently too little attractive for wide adoption.
In the quote from the interview with Wirth he says "I think the industry thinks it’s a big asset to have a complex thing that increases their reputation of being sophisticated." So rather than a curing a lack of expressivity, complexity instead provides a marketing edge, in his opinion.
> Not surprisingly, variants of all Wirth languages have quickly emerged
Again, to me that seems like a kind of success. The alternatives are that Wirth birthed perfect languages, like Athena springing from the head of Zeus, or that they were all barren and died on the vine.
> So rather than a curing a lack of expressivity, complexity instead provides a marketing edge, in his opinion.
His focus was educating students at ETH; the languages he created with this focus were fit for purpose; it is true that there are developers in industry who prefer complex languages for sophistication reasons; but there are also pragmatic people; even they apparently prefer Delphi over Pascal; I don't consider Delphi complex e.g. in comparison with C++11.
> to me that seems like a kind of success
Agree; the original languages are great and a robust basis; and e.g. Go is a very successful offspring of Oberon-2.
> Personally I prefer Oberon+ over original Oberon.
I don't like that Oberon+ removed uppercase requirement for the keywords. While I too found the uppercase requirement to be weird initially, I have now come to appreciate the sentiment behind it - it does make it easy to read and review the Oberon code. Just like Python uses indentation to increase readability, the uppercase keywords were a good defining feature of the original Oberon, and shouldn't have been removed. After all, now that modern editors can automatically make the keywords uppercase, programmers don't really have any reason to complain about it. It's a simple usability trick that doesn't rely on colours or font size or weight to increase readability. (One can also argue that if you want to remove that as a language feature, why stop there - why not also remove BEGIN and END and replace that with brackets or something else?).
Upper case keywords are not removed. You can continue to use the old syntax, so the code looks like it came straight out of the sixties, see https://oberon-lang.github.io/2021/07/15/examples-with-tradi.... Each valid Oberon, Oberon-07 or Oberon-2 program is a valid Oberon+ program. The lexer checks whether module is written in upper or lower case and then switches the syntax. Only a few people still prefer the old syntax. What do you dislike about begin/end?
Thanks for the clarification. It would also be helpful if the editor also included a setting to automatically capitalise the keywords and make the developer's job easier. And no, I don't dislike begin / end as they too improve readability (I was just pointing out that they are also a language design feature to increase readability). Modern editors though should anyway be offering to auto-complete it so that typing these doesn't become tedious.
The point is that the functionality of current systems hasn't progressed much beyond what you could manage three or four decades ago despite Moore's law because complexity has eaten the gains.