A lot of my earliest programming experiences were with Pascal. Apple Pascal in high school on Apple IIe and II+ machines. Later, Turbo Pascal on my dad's PC. I worked with the developer of IBM's Oberon system for OS/2 something like 20 years ago, and he considered it among his favorite things he'd ever worked on.
Every time I see a Borland style interface or that weird Pascal syntax, I flash back, and remember that feeling of...something like power; the ability to make the computer do anything you wanted, not just what you could already buy/pirate on disk.
That said, there's a reason I didn't keep using Turbo Pascal once I had access to C and Perl on Linux systems. Some things are better than others, and Turbo Pascal and things like Turbo Pascal are nostalgic, but not exactly good. (Then again, I'm working on games for C64, so nostalgia does things to a body.)
wood_spirit 8 hours ago [-]
For me turbo pascal - with inline assembly - was the pinnacle. I got into c and later c++ because I had to, but always found the symbols slightly harder on the eyes and surprisingly not faster to type. And I was always frustrated by the bloat of the executables and the much slower compilation times. And the runtime speed - I was doing a lot of assembly, it was something I became interested in even on projects that didn’t need it - was actually much faster in TP. It was, in my eyes, the perfect blend of easy on the eyes syntax, blazingly fast compilation and runtime and small easy to share executables.
Then of course Delphi came along and made all that true for windows apps too!
So somehow I chime with how your comment starts but have such different memories of how it ends :)
_the_inflator 24 minutes ago [-]
Same here. Good old 386/486 days in the scene. (Turbo) Pascal was a thing back then in conjunction with inline assembler. C was not really a big deal. Visual C++ came many years later.
Even the legendary Triton relied on the combination of assembler and Pascal:
Before Delphi, there was Turbo Pascal for Windows already, with Object Windows Library.
Versions 1.0 and 1.5.
pjmlp 8 hours ago [-]
I am so glad to have had the luck to learn coding via various BASIC flavours, Turbo Pascal, Z80, 8086 Assembly before getting into C and C++, as I wasn't tainted about C being God's revelation for systems programming, that many seem to have.
After learning C, I quickly switched to C++, alongside Pascal, and stayed on Borland ecosystem until Visual C++ 6.0 came to be, followed by .NET.
On UNIX, C++ was my Typescript for C, as back then there wasn't FreePascal, and most Pascal implementations for UNIX sucked, plain standard Pascal, or P2C.
I also had the pleasure to have a myriad of other programming languages, including Oberon, yes it was rather cool for its time.
The way most modern languages have gone back to Pascal style development feels quite enjoyable.
fuzztester 5 hours ago [-]
In what ways have they gone back to Pascal style?
pjmlp 3 hours ago [-]
Some things, that are not only Pascal, but languages influenced by it during the 1970-1980's.
The most obvious one is type declaration order.
Strong typing, with more explicit casts, to what C devs used to call straightjacket programming on BBS and Usenet discussions.
Striving to go back to toolchains with fast compilation times.
Being able to use high level concepts, while at the same time having the primitves for low level coding, no need for everything is a pointer, when the compiler can take care of it
The spans everyone is talking about nowadays, used to be called open arrays in Extended Pascal and Modula-2.
Arenas, were marked regions, see Mark/Release.
While one can advocate that Rust is more Standard ML, Go, Zig, Odin show clearly how Oberon or Modula-2 would look like with more curly brackets and lowercase keywords.
adrian_b 1 hours ago [-]
Standard Pascal had some very serious design mistakes, which are less obvious for those who have used only extended variants, like Turbo Pascal or Extended Pascal, where some of the mistakes had been corrected.
Probably the greatest mistake was that arrays of different sizes were different types in Pascal. While C had extremely poor support for arrays in comparison with older languages like Fortran, PL/I or Algol 68, Pascal was even worse, because in Standard Pascal it was pretty much impossible to write a library implementing linear algebra algorithms.
Actually in Standard Pascal it was impossible to write any kind of library, because separate compilation was impossible.
Turbo Pascal was a decent programming language, but only because it had a lot of essential extensions over Standard Pascal, including the ability to write multi-file programs.
The languages designed by Wirth have become very well known, because he and others have written some very good books about them for beginners and they were used in teaching in many places, but all of his languages were quite bad in comparison with the languages that he wanted to replace, because he thought that they were too complex, e.g. Algol 68 and Xerox Mesa.
pjmlp 43 minutes ago [-]
Why bring Standard Pascal to the party?
It is always used as an example of how bad Pascal used to be.
Yet it always gets forgotten that only lousy UNIX compilers, or some 8 bit implementations, ever did nothing else.
It was created to learn programming, the Python of 1970's, quickly everyone else was using UCSD Pascal and various other extensions (which apparently are always cool when the language happens to be C), which were later standardised under Extended Pascal.
Although, yet again, GNU Pascal is probably the only UNIX compiler that supported it until FreePascal came to be.
Niklaus Wirth designed Modula-2 in 1978, thus still in the same decade as Pascal, exactly for systems programming and large scale software development.
Borland helped spread Apple's Object Pascal, designed with feedback from Niklaus Wirth, beyond Apple ecosystem, to what we foundly remember nowadays.
Yet Standard Pascal has to keep coming up all the time.
alexwwang 3 hours ago [-]
I usually install Lazarus on my pc though seldom use it now. Still want to pick it up someday to compensate my miss in childhood. Only used turbo C then.
Barrin92 10 hours ago [-]
My first experience with Pascal was only a few years ago by way of Lazarus which is now my go-to tool whenever I need to build a GUI for myself. Genuinely enjoy it and find it a much more pleasant experience than C. I'm sort of sad I missed the heyday of the Borland tooling because it seems incredibly productive even without nostalgia.
pjmlp 3 hours ago [-]
It definitly was, see the Turbo Pascal manuals for MS-DOS, and Windows 3.x that are available on the digital archive.
Everyone is talking about Ratatui nowadays, go check what Turbo Vision in Turbo Pascal 6 already offered in the world of MS-DOS PCs in the early 1990's, with the IDE as basis to show its capabilities as TUI framework.
lysace 11 hours ago [-]
> Then again, I'm working on games for C64, so nostalgia does things to a body.
You should check out Turbo Rascal (...), but you probably already did.
It's a blog post written in 2021, in txt, with ASCII diagrams and Pascal source code.
I hope it warms your hearts.
sys42590 3 hours ago [-]
Modula-2 was born into a time when 8-bit char sets with upper- and lowercase letters were common place but syntax highlighting was still not common. This caused the language to be designed with uppercase keywords because it really makes the code easier to read without syntax highlighting.
Oberon inherited this despite syntax highlighting starting to get traction in the 80s. But nowadays it places an unneeded toll on the shift and caps lock keys and makes coding a bit more tedious.
Rochus 2 hours ago [-]
> nowadays it places an unneeded toll on the shift and caps lock keys and makes coding a bit more tedious
The version which I would really like to see would be a native distribution for the Raspberry Pi of the Oberon Workstation environment --- apparently there is a problem with the drivers which makes porting difficult.
That is new since the last time I looked into this.
_Very_ cool, and I know what I'm going to do w/ my son's old rPi3 --- any plans to update for the 5?
Rochus 2 hours ago [-]
> any plans to update for the 5?
It currently works on the 2b, 3b and Zero 2; the latter was my actual target because it is a very nice and still lean board available for ~15$ worldwide at least until 2030, and meets very well with the Oberon philosophy. With models like the 4 or 5 series, the Pi goes more and more away from its original leanness. So, currently I'm trying to migrate the system to the ESP32-P4 platform, which seem like the perfect fit for Oberon system, specifically the Olimex board with a HDMI socket.
Sunspark 37 minutes ago [-]
ESP32 is a great SOC. Watch out for RAM issues though. I have an e-reader using an ESP32 that only has 180kb or so of usable RAM which makes things very difficult to work with. You will need to specify that it has to be the versions that have addressable RAM. Unless of course, all updates are entirely firmware and the limited memory is just to hold the text editor buffer.
Rochus 2 minutes ago [-]
The Olimex board has 768KB RAM and 32MB PSRAM, more than enough. The original Ceres only had 2 MB of DRAM and 256 KB of VRAM.
stuaxo 1 hours ago [-]
I think this type of IDE was one of my favourites over the years.
There were things that tried to reproduce it like RHIDE I could never quite get on with, but this looks just about perfect.
rurban 4 hours ago [-]
Wonder why they still haven't got their spark-like proof system from Ada. Would be more worth than playing with the graphics stuff, they added.
agrijakhetarpal 13 hours ago [-]
"freeoberon-lang.org"
lysace 13 hours ago [-]
The linked project web site (https://free.oberon.org/en) proudly features a video with a thumbnail showing a rendition of the USSR's parliament, the so called Supreme Soviet, with some screenshots added in.
Extremely poor taste.
nine_k 10 hours ago [-]
I suppose it's just imagery from the heyday of Wirth's Oberon, ca 1987.
BTW Oberon was / is not just a language, but a whole very interesting interactive computing environment.
shrubble 12 hours ago [-]
I think some of the devs are Russian and a quick scan of the video doesn't show anything other than a shared screen for the bulk of the time (using the mouse to grab the time pointer and move it quickly through the length of the presentation).
veqq 6 hours ago [-]
Pascal is quite common in Russia - many schools teach comp sci with it.
Some people use My Little Pony characters as avatars, some use history books characters and propaganda poster characters. It means nothing in itself, people rarely stick to what they preach.
If you think that dumb nostalgia about “good old times” and complete ignorance/acceptance of any murders if they are considered state-sanctioned is somehow different in your own country (any country at any time), you must come to conclusion that some people inherently have lesser “quality” than others based on papers that they are given at birth by this or that organisation calling itself a state. Problematic, as they say.
eschaton 11 hours ago [-]
Sure. But there are also a significant number of people who are nostalgic for it and might be offended by this use for that reason, hence why I asked.
Given the existence of both groups I think just the claim that it’s offensive, without explaining why, is ambiguous and just reacting defensively doesn’t address that.
kombine 5 hours ago [-]
> Given the existence of both groups
This is a false equivalence between those who suffered from USSR and those who are ignorant of the suffering of others. I don't think we should care about feelings of a group who are for whatever reason nostalgic about a genocidal oppressive regime.
eschaton 4 hours ago [-]
Would you treat an image of the US House of Representatives the same way? The United States has caused an enormous amount of suffering in the world and has in the past had an explicit policy of genocide and oppression against a number of groups (including my wife’s ancestors), as well as a number of other horrific policies. If you would not treat an image of the US House of Representatives the same way as you treat an image of the Supreme Soviet, it’s worthwhile to interrogate why.
Peoples’ feelings about the nations they are born into and told to love from birth are complex and multifaceted. The people I know who grew up in the USSR have both good and bad things to say about it, just like the people I know who grew up in the USA (like me) at the same time (the 1970s-1990s) have both good and bad things to say about it. And that isn’t just about our own experiences growing up in these respective nations, but about learning our birth nations’ true histories, and how closely (or not) the ideals espoused by their founders and politicians and important figures in their histories were reflected in their actions.
Thus I really, truly do believe it’s ambiguous for someone to say, without any further context, that they find an image of a legislature with some screen shots of an IDE placed into it offensive. Is it offensive because it’s referencing a body they consider evil or is it offensive because it’s trivializing a body they consider good? Without context it’s impossible to know, and acting like everyone shares the same context about this is just refusal to engage with the world as it is rather than the world as you’d like it to be.
jech 3 hours ago [-]
> Would you treat an image of the US House of Representatives the same way?
No. The right analogy is an image of the Reichstag with Nazi banners.
eschaton 3 hours ago [-]
A lot of people will disagree with you on that.
A lot of people might also have coherent reasons to think that analogy applies equally to the US House of Representatives and the US Senate.
tgv 8 hours ago [-]
Given all we know about the USSR, I don't think anyone needs to explain why. This plus your other comment suggest you're replying in bad faith.
Mikhail_Edoshin 8 hours ago [-]
It ain’t what you don’t know that gets you into trouble. It’s what you know for sure that just ain’t so.
8 hours ago [-]
eschaton 8 hours ago [-]
Nope. I just evidently know people with more varied opinions on the USSR than you do. (Including people who grew up there.)
jibal 8 hours ago [-]
Indeed, that accusation of bad faith is such blatant projection ... essentially "It's bad faith to disagree with me, and there's no need for me to justify my claims."
This whole diversion is off topic and can be seen as a form of bad faith.
eschaton 4 hours ago [-]
I’m not even disagreeing, I’m saying that there are different (and somewhat opposed) ways in which someone could find an image offensive, so it’s worthwhile to provide further context.
kombine 5 hours ago [-]
> Soviet imagery has also been widely used by Russian propaganda in its current war against Ukraine
That alone makes it very bad taste to use any of the Soviet imagery. I'm not sure why it's even a debatable topic at this point.
z0ltan 3 hours ago [-]
[dead]
lysace 12 hours ago [-]
That's bait. Go find your history school books. Byebye.
eschaton 12 hours ago [-]
How about you just explain what you mean?
You’re the one who made the statement. It’s on you to support it.
12 hours ago [-]
z0ltan 3 hours ago [-]
[dead]
throwaway7356 7 hours ago [-]
They use Yandex for e-mail, so probably a Russian group behind this.
koutakun 12 hours ago [-]
[flagged]
monkeywork 12 hours ago [-]
More info please? I have severe doubts that GOG actually had that intent.
shakna 11 hours ago [-]
This one [0]. Which German QA picked up and said 'no way', and so German customers didn't get the newsletter. But everyone else still did.
Every time I see a Borland style interface or that weird Pascal syntax, I flash back, and remember that feeling of...something like power; the ability to make the computer do anything you wanted, not just what you could already buy/pirate on disk.
That said, there's a reason I didn't keep using Turbo Pascal once I had access to C and Perl on Linux systems. Some things are better than others, and Turbo Pascal and things like Turbo Pascal are nostalgic, but not exactly good. (Then again, I'm working on games for C64, so nostalgia does things to a body.)
Then of course Delphi came along and made all that true for windows apps too!
So somehow I chime with how your comment starts but have such different memories of how it ends :)
Even the legendary Triton relied on the combination of assembler and Pascal:
https://en.wikipedia.org/wiki/Triton_(demogroup)
Versions 1.0 and 1.5.
After learning C, I quickly switched to C++, alongside Pascal, and stayed on Borland ecosystem until Visual C++ 6.0 came to be, followed by .NET.
On UNIX, C++ was my Typescript for C, as back then there wasn't FreePascal, and most Pascal implementations for UNIX sucked, plain standard Pascal, or P2C.
I also had the pleasure to have a myriad of other programming languages, including Oberon, yes it was rather cool for its time.
The way most modern languages have gone back to Pascal style development feels quite enjoyable.
The most obvious one is type declaration order.
Strong typing, with more explicit casts, to what C devs used to call straightjacket programming on BBS and Usenet discussions.
Striving to go back to toolchains with fast compilation times.
Being able to use high level concepts, while at the same time having the primitves for low level coding, no need for everything is a pointer, when the compiler can take care of it
The spans everyone is talking about nowadays, used to be called open arrays in Extended Pascal and Modula-2.
Arenas, were marked regions, see Mark/Release.
While one can advocate that Rust is more Standard ML, Go, Zig, Odin show clearly how Oberon or Modula-2 would look like with more curly brackets and lowercase keywords.
Probably the greatest mistake was that arrays of different sizes were different types in Pascal. While C had extremely poor support for arrays in comparison with older languages like Fortran, PL/I or Algol 68, Pascal was even worse, because in Standard Pascal it was pretty much impossible to write a library implementing linear algebra algorithms.
Actually in Standard Pascal it was impossible to write any kind of library, because separate compilation was impossible.
Turbo Pascal was a decent programming language, but only because it had a lot of essential extensions over Standard Pascal, including the ability to write multi-file programs.
The languages designed by Wirth have become very well known, because he and others have written some very good books about them for beginners and they were used in teaching in many places, but all of his languages were quite bad in comparison with the languages that he wanted to replace, because he thought that they were too complex, e.g. Algol 68 and Xerox Mesa.
It is always used as an example of how bad Pascal used to be.
Yet it always gets forgotten that only lousy UNIX compilers, or some 8 bit implementations, ever did nothing else.
It was created to learn programming, the Python of 1970's, quickly everyone else was using UCSD Pascal and various other extensions (which apparently are always cool when the language happens to be C), which were later standardised under Extended Pascal.
Although, yet again, GNU Pascal is probably the only UNIX compiler that supported it until FreePascal came to be.
Niklaus Wirth designed Modula-2 in 1978, thus still in the same decade as Pascal, exactly for systems programming and large scale software development.
Borland helped spread Apple's Object Pascal, designed with feedback from Niklaus Wirth, beyond Apple ecosystem, to what we foundly remember nowadays.
Yet Standard Pascal has to keep coming up all the time.
Everyone is talking about Ratatui nowadays, go check what Turbo Vision in Turbo Pascal 6 already offered in the world of MS-DOS PCs in the early 1990's, with the IDE as basis to show its capabilities as TUI framework.
You should check out Turbo Rascal (...), but you probably already did.
https://lemonspawn.com/turbo-rascal-syntax-error-expected-bu... (outdated cert)
https://github.com/leuat/TRSE/
Recently, reading the Wikipedia article about Z-order curves, I found this link inside the article:
https://hermanntropf.de/media/DBCode_mit_Erlaeuterung.txt
It's a blog post written in 2021, in txt, with ASCII diagrams and Pascal source code. I hope it warms your hearts.
Oberon inherited this despite syntax highlighting starting to get traction in the 80s. But nowadays it places an unneeded toll on the shift and caps lock keys and makes coding a bit more tedious.
Right. But there are evolutions of Oberon without these orthodoxies (e.g. https://github.com/rochus-keller/oberon or https://github.com/rochus-keller/micron) and a few additional features which make it a really powerful but still lean language.
https://github.com/rochus-keller/OberonSystem3Native
_Very_ cool, and I know what I'm going to do w/ my son's old rPi3 --- any plans to update for the 5?
It currently works on the 2b, 3b and Zero 2; the latter was my actual target because it is a very nice and still lean board available for ~15$ worldwide at least until 2030, and meets very well with the Oberon philosophy. With models like the 4 or 5 series, the Pi goes more and more away from its original leanness. So, currently I'm trying to migrate the system to the ESP32-P4 platform, which seem like the perfect fit for Oberon system, specifically the Olimex board with a HDMI socket.
There were things that tried to reproduce it like RHIDE I could never quite get on with, but this looks just about perfect.
Extremely poor taste.
BTW Oberon was / is not just a language, but a whole very interesting interactive computing environment.
How so?
If you think that dumb nostalgia about “good old times” and complete ignorance/acceptance of any murders if they are considered state-sanctioned is somehow different in your own country (any country at any time), you must come to conclusion that some people inherently have lesser “quality” than others based on papers that they are given at birth by this or that organisation calling itself a state. Problematic, as they say.
Given the existence of both groups I think just the claim that it’s offensive, without explaining why, is ambiguous and just reacting defensively doesn’t address that.
This is a false equivalence between those who suffered from USSR and those who are ignorant of the suffering of others. I don't think we should care about feelings of a group who are for whatever reason nostalgic about a genocidal oppressive regime.
Peoples’ feelings about the nations they are born into and told to love from birth are complex and multifaceted. The people I know who grew up in the USSR have both good and bad things to say about it, just like the people I know who grew up in the USA (like me) at the same time (the 1970s-1990s) have both good and bad things to say about it. And that isn’t just about our own experiences growing up in these respective nations, but about learning our birth nations’ true histories, and how closely (or not) the ideals espoused by their founders and politicians and important figures in their histories were reflected in their actions.
Thus I really, truly do believe it’s ambiguous for someone to say, without any further context, that they find an image of a legislature with some screen shots of an IDE placed into it offensive. Is it offensive because it’s referencing a body they consider evil or is it offensive because it’s trivializing a body they consider good? Without context it’s impossible to know, and acting like everyone shares the same context about this is just refusal to engage with the world as it is rather than the world as you’d like it to be.
No. The right analogy is an image of the Reichstag with Nazi banners.
A lot of people might also have coherent reasons to think that analogy applies equally to the US House of Representatives and the US Senate.
This whole diversion is off topic and can be seen as a form of bad faith.
That alone makes it very bad taste to use any of the Soviet imagery. I'm not sure why it's even a debatable topic at this point.
You’re the one who made the statement. It’s on you to support it.
[0] https://www.pcgamer.com/games/gog-apologizes-for-emailing-na...