Forum > Other

A "leisure" question on Wirthian languages.

(1/8) > >>

EventHorizon:
Hello to all

recently, I started looking around for the "remnants" of various Wirthian Languages. I must say, barring FPC/Delphi, most of them seem abandoned.

So, as a subject of a leisure conversation, I would like very much to hear your opinion(s) on these:
1. Oberon+ (something like the unification of Oberon 2 and Oberon 07) https://oberon-lang.github.io/
2. Free Oberon (Somewhere I read that the creator was inspired by FPC.) https://free.oberon.org/en/
Both are garbage collected and use (if not mistaken) transpilation to C (Obfront+)
3. Zonnon (beautiful/elegant syntax, unfortunately available only for .NET) https://zonnon.org/
4. Unfortunately, nothing to report on Modula 2 (although, there are use cases in, e.g., github). That's sad (along with Pascal is not garbage collected). I think GNU GCC 13 ships with it but in a Google search I found references only for Debian (mostly) and Slackware.
5. Component Pascal. Well, not much to say, since I was not able to run it in my system (available, primarily, on Windows and Mint/Debian/Ubuntu).

Two general observations (not necessarily unrelated!):
a) most work in general is done from Russian speaking persons (e.g., cf oberon.org). I did know that in Russia, Wirthian languages are much appreciated
b) most work is (mainly, not exclusively) available for Windows! (OK, that's weird, to me... I would expect that Linux and, FOSS in general would be more appreciated).

Anyway. So, as a discussion starter (IF you are interested of course  :P ), a bunch of questions:

* What is your opinion of those projects, mainly from the conceptual (i.e., language design) point of view? A comparative analysis would be very interesting
* Prompted by the case of e.g., Oberon, would you say that Garbage Collection is a non show stopper for critical (systems) development?
* Did I miss anything important / any example in my "short list" above?

* Thoughts on those languages compared to more modern solutions, like, e.g., Zig, Rust, V lang, Nim?

marcov:

* IMHO Oberon never really had a practical killer feature, language or librarywise. It was all about purity, minimalism of language and other revolutionary lofty goals that more inspired than were productive. Mostly they only panned out in later languages like Java that heavily borrowed from it. It missed the opportunity to reach some critical mass in the early nineties or so due to lack of focus.
* I don't like garbage collection. I sometimes have to live with it (did Java and C# in the past), but for normal application development I wouldn't actively seek it. But, in general, frameworks (like ASP.NET) are a bigger convincing factor than mere language (features). IOW, what can you do with it, not just a bullet list of features.  My dislike comes from having had to fight it in Java were an application would just be unresponsive for seconds.  When you start a project, manual management might be more work, but that is predictable, if you run into GC problems that is less so.
* I liked M2 in the past. IMHO it would make a good embedded language. For large scale application development IMHO the minimal, purely procedural nature is too limited. But like Oberon, a missed opportunity in practice. (maybe if the guys from Arduino had chosen it....)
* Most of them except maybe Rust are also solutions in search of a problem. Anyway who is introducing a language is more important factor for success than the language's properties itself
Rust might be forced upon you by an employer at some point, regardless of your opinion on it. So better keep an eye on it.

a) Russian highschools and Universities used Pascal for a very long time. The problem is that in the west, a model of using "industry" languages for education was pushed by mostly US IT and accounting giants to save training costs in the first job for a few big employers of graduates.

b) Despite all FUD, Windows is still the dominant client target, and more importantly, somewhat stable in time. Each new linux distribution/version requires work to get the language fixed and packaged again.

gidesa:
Just in these days I am doing something with 2 Modula-2 compilers.
They once were commercial products, now released as free.
- XDS is free and opensource, , it's a compiler (only for Win), with good performance in my minimal tests; but it's also a transpiler to Ansi/C. It compile/translate also Oberon2  https://github.com/excelsior-oss/xds-2.60/
- ADW is free compiler with a decent IDE, and good help https://www.modula2.org/adwm2/

There is also a PascalABCNet, a Pascal compiler for Dotnet. Interesting product, being Dotnet so widely used. It's done, guess...? in one russian institution :-) It's free,  and opensource. https://pascalabc.net/en/
 
Today the C type syntax is very, very loved, see from "old" Java to "young" Rust, Go, and more.
Maybe there is a strong reason to use it versus Pascal type, maybe not. Apart verbosity.
 


 

EventHorizon:

--- Quote from: marcov on March 27, 2024, 06:08:55 pm ---4. Most of them except maybe Rust are also solutions in search of a problem.

--- End quote ---
As, always, a very thorough reply. Thank you!

To the conversation now. Do I detect a "hate" against Rust?  :P Honestly, I think it is very complicated -even its syntax. I am not an IT person (trying languages just for pleasure and mental exercise), but perhaps, persons like I are a kind of measure of "friendliness" of a tool. I might be wrong of course. BTW I think Zig is much better placed -although (along with Java) is one of the most verbose languages I have ever seen.

Awkward:
small addition for university abandoned realization of Win32 compiler:
https://github.com/askfind/strannik (Modula-2 / C / Pascal compiler)

Navigation

[0] Message Index

[#] Next page

Go to full version