3 ms·
But even with Oberon, Wirth doesn't seem to have learnt the usability lesson, and removed stuff like enumeration types and variant records. I get the appeal of
by HarHarVeryFunny 4y ago
But even with Oberon, Wirth doesn't seem to have learnt the usability lesson, and removed stuff like enumeration types and variant records.
I get the appeal of a simple language, but was just pointing out that in addition to compromising functionality it also lead to the death of Wirth's languages by means of there effectively being no standard.
I've probably had as much exposure to Wirth's languages as anyone:
- Learnt Algol-W in college c. 1979
- Implemented ISO-Pascal (me +1) at Acorn (UK) c.1982
- Used Modula-2 to program parts of PANOS at Acorn
Have spent the last few months programming in Acorn ISO Pascal on an 8-bit emulator (BeebEm), struck by how awful the language itself really was!
- vidarh 4y agoYou appear to want him to have different goals for these languages than he had. That they don't have mass adoption is fine. It's not their primary value. That said, "death" is too harsh, all the time there are multiple implementations of both Wirth-derived (the most prominent being Delphi, which is still being developed and sold) and "pure" Wirth languages available and in use. If anything, I find it more remarkable that they've been seen as much adoption as they have outside of teaching. There's even a very expensive commercial ARM implementation of Oberon-07. It's in any case largely irrelevant to the question of their appeal. I don't want to work in Oberon (or Pascal) any more than you do (but, to tie it back to this article, I also don't want to work in C++ unless I have to), but in terms of distilling lessons of what is needed from a language, and a learning tool, it is up there with Smalltalk and Lisp (other languages I don't want to work in) as one of a small handful of the language designs that will continue to influence for a long time to come. And that is a large part of their appeal - not for day to day use, but for the lessons you can learn from them. I don't care if nobody uses them. I care about the research they contributed to and spawned, and what I can still learn from them. > and removed stuff like enumeration types and variant records. Oberon replaced variant records with extended types, type tests, and procedure variable (function pointers), sufficient to do OOP. In terms of his goal of focusing on sticking to the bare essentials, it was a good tradeoff, and it sparked novel work.
- HarHarVeryFunny 4y agoI really don't see Wirth in reality as a huge influence in the history of programming language design. All of Wirth's languages are in essence tweaks on ALGOL from which they all (starting with ALGOL-W) were derived. What's so new about any of Wirth's languages, even Oberon? OOP had already been done 20 years prior in Simula, as well as more recent pre-Oberon languages. He certainly left his mark on the computer industry in terms of products based on his work, but would, say, a hypothetical "Turbo Algol" have been much different than "Turbo Pascal"? The popularity of Turbo Pascal (& Delphi) really had more to do with the implementation (speed, IDE, language extensions) than the base language itself.
- timbit42 4y ago> I really don't see Wirth in reality as a huge influence in the history of programming language design. C# is influenced by Pascal and Modula-2 because Anders Hejlsberg had a huge hand in creating it. Go and Lua are also quite heavily influenced by the Wirthian languages. Ada is also a direct descendant of Pascal and Modula-2. For a while in the 80's, Ada was more popular than C++ because of the DoD standardizing on it but the DoD and NASA still use it today. NASA's Artemis project uses Ada. The Canadian air traffic controls system all run Ada. Wirthian languages have been focused on safety for 50 years. The industry is just now catching up with safety-focused Rust as a first step. It's long overdue. C and C++ were dangerous enough offline but using them online is just asking to get hacked. Sure, safe code can be written in them but not many C and C++ programmers are capable of doing so. Why wouldn't you want a language that handled the bulk of that for you?
- HarHarVeryFunny 4y agoC# is really managed C, and the C lineage is more ALGOL -> BCPL -> B - > C Sure Ada saw some success, and is even a pretty decent language, but I fail to see that there is much Wirth in there, certainly not his minimalist aesthetic!
- timbit42 4y ago
- timbit42 4y agoPascal was designed for learning programming concepts, not for real world use. Others modified it for real world use but Modula-2 was designed for real world use and is a huge improvement over Pascal.