3 ms·
Thanks for the real-world perspective. There's a lot of stuff I didn't know in there. > Although not a Wirth language, perhaps Ada comes closest to being a usa
by lproven 4y ago
Thanks for the real-world perspective. There's a lot of stuff I didn't know in there.
> Although not a Wirth language, perhaps Ada comes closest to being a usable, if cumbersome, language from the same mindset.
A legit point.
I find it very amusing (in a tragi-comic sort of way) that despite regularly ranking as the fastest language outside the C family in the "Benchmarks Game" – https://benchmarksgame-team.pages.debian.net/benchmarksgame https://benchmarksgame-team.pages.debian.net/benchmarksgame – it gets overlooked or ignored compared to trendier languages for xNix types.
(Interestingly, getting that link, I see that it's changed in the last year or so since I last looked. E.g. Julia is doing well, which is impressive: it is designed to be fast at numerical stuff, but even so, it's not compiled.)
Ada was seen as huge and bloated in the '80s, yes. Compared to most 20th century languages, it's positively lean and svelte.
> I'm not familar with Oberon though.
It's been a research interest of mine for years now; cf.
https://www.theregister.com/2015/12/02/pi_versus_oberton/ https://www.theregister.com/2015/12/02/pi_versus_oberton/
I got some interest from the Squeak community a while ago. Not sure if anything will come of it, though.
I am in an Oberon Telegram chat channel, but it's in Russian, a language of which I understand very little. Various Russian institutions have been working with Wirthian languages for 30+ years now. There is active interested and R&D going on there.
I think it's worth a look. A complete compiler, together with its own IDE and self-hosted on its own (somewhat rudimentary) OS, in just a few tens of thousands of lines of code. It's got the functionality of an early x86 Unix but it's down around the size of mid-era MS-DOS.
I am not aware of anything else that compares to it. A list of its characteristics I thought notable:
• a clean, simple OS, with SMP support, that supported pre-emption, memory management etc.
• in a type-safe language, with a native-object-code compiler — not JITTed, not using a VM or runtime
• and a readable language, not something far outside the Algol family of imperative HLLs
• that was portable across different architectures
• that was FOSS and could be forked
• that was documented and had a user community who knew it
• that can be built with FOSS tools (which RISC OS fails, for instance)
• which is or was used by non-specialists for general purpose computing
• which can usefully access the Internet
• which runs on commodity hardware