6 ms·
I used Modula-2 at Acorn c.1982 (did some development for PANOS), as well as being half of the Acorn team that developed the Acorn ISO Pascal system. I have to
by HarHarVeryFunny 4y ago
I used Modula-2 at Acorn c.1982 (did some development for PANOS), as well as being half of the Acorn team that developed the Acorn ISO Pascal system. I have to say that to me both languages - straight-up standard (not extended) Pascal and Modula-2 suck! Modula-2 is really just Pascal with modules, which was welcome, but even the ISO Pascal standard mentioned the "external" directive as a common extension to support separate compilation which is 3/4 the benefit of modules (the other 1/4 being the module namespace).
Extended versions of both languages such as Borland Turbo Pascal or TopSpeed Modula-2 were great, but it rather damning that the only way to make a language really useful is to extend it !
C, which was around at the same time, was always a much more useful language.
- jksmith 4y agoAgreed TSM2 was a sweet effort, and that green thread traffic light demo was fun to play with.
- kcartlidge 4y agoLoved that demo. Still have the code for it. TopSpeed Modula-2 was superb, so much so that even as a college student I bought it - twice, because I damaged the first one.
- lproven 4y ago[Author/submitter here] > Modula-2 is really just Pascal with modules, which was welcome My impression is that Modula was "just Pascal with modules", and Modula-2 is "Pascal with modules and coroutines". (At risk of dramatic over-simplification.) Secondarily, the existence of Modula-2+ and Modula-3 (from 3rd parties) and then Wirth himself moving on to Oberon suggests that while Modula/Modula-2 were not quite there yet, Oberon was at least a lot closer. Although the relative plethora of Oberon variants (Oberon, Oberon-07, Oberon 2, Active Oberon, etc.) suggests that maybe it was still not quite fully evolved. I do wonder if, rather than competing implementations and variants, it would be possible to re-unify them under one standard, in the way that Common Lisp managed to do... even if it were not something quite as minimal and elegant as Prof Wirth would endorse.
- Rochus 4y ago> Although the relative plethora of Oberon variants [..] suggests that maybe it was still not quite fully evolved. That's a reasonable conclusion, but one has to consider that most variants came from academia and focused on specific scientific questions, not on the adaptation to practical needs of the industry. > it would be possible to re-unify them under one standard, in the way that Common Lisp managed to do I did that with Oberon+ which unifies Oberon, Oberon-07 and Oberon-2. It also includes what I consider the best ideas of Component Pascal and Active Oberon (though I don't like the syntax of these two languages very much). See https://oberon-lang.github.io/2021/07/15/motivation-for-a-new-oberon-version.html https://oberon-lang.github.io/2021/07/15/motivation-for-a-ne..., https://oberon-lang.github.io/2021/07/16/comparing-oberon+-with-oberon-2-and-07.html https://oberon-lang.github.io/2021/07/16/comparing-oberon+-w... and https://github.com/oberon-lang/specification/blob/master/The_Programming_Language_Oberon%2B.adoc https://github.com/oberon-lang/specification/blob/master/The....
- lproven 4y ago> I did that with Oberon+ which unifies Oberon, Oberon-07 and Oberon-2. Oh I see! But, AIUI, that's just a compiler on other OSes, right? It's the IDE and the OS that interests me. If I wanted to program on Linux or whatever, I'd probably use FreePascal or something. It's the OS and the integration that makes Oberon interesting for me. In a world of sprawling multi-gigabyte OSes implemented in half a dozen languages and held together with sticky tape: various scripting language. One tiny elegant OS, self-hosted in one tiny language, has charm for me.
- Rochus 4y ago> that's just a compiler on other OSes, right? It's possible to run an Oberon System with it (see https://github.com/rochus-keller/OberonSystem https://github.com/rochus-keller/OberonSystem ); it runs on all platforms and the generated C code could even be made run as an OS on an embedded system if need be; I currently also experiment with System 3 and alternative backends; but this is more for curiosity; from my humble point of view the OS topic is solved with Linux (which can also be configured for very low resource systems).