Otherwise it would still be a big contender.
Everything that Zig offers over C as selling point was already there in Object Pascal.
But it _did_ have range checks for array access.
What's an example of the pain?
https://docwiki.embarcadero.com/RADStudio/Florence/en/Pointe...
Trivial C interop - yes. Both pascal and cdecl style calling conventions.
Toolchain? Back then - yes. Today? Probably not; depends what you mean by it. It had perfect COM interop which mattered back then, and you could trivially link stuff if you wanted to. And people did.
> most developers never bothered learning the "go to next error" hotkey and just spammed F9 (compile & run) whenever they fixed a syntax error
We didn't know we were privileged. I thought it was normal thing to have.
No comptime, but everything else, sure, Turbo Pascal (and then Delphi) had.
Maybe it'll blow your mind (not sure if you find this impressive or not), but Turbo Pascal had sub-second compilation per module on large modules back on my 486 with 4MB of RAM.
Sure, Zig has more features than Pascal, but not the ones you listed (except, of course, for comptime).
And still does. You can get the latest version of Delphi (including a free version for non-commercial use) here: https://www.embarcadero.com/products/delphi
It rocks.
You're also not limited to Delphi. You can use Oxygene https://www.remobjects.com/elements/oxygene/language
If you're not in the mood to rent your compiler, you can also try Lazarus.
Also, for non-commercial use, Delphi is free.
Object Pascal compilers were already super fast in MS-DOS hardware!
IIRC Apple went and made Objective-C(/C++) and then eventually Swift. Not sure if they actually embraced C++ all that much - did they really?
I am talking about Apple after Jobs was kicked out.
You missed the part where NeXT licensed Objective-C from Stepstone, Apple bought NeXT as last survival action before bankruptcy, and OS X sprung out of NeXTSTEP.
Personally, in that family of languages I prefer Ada, but I gave up with programming and programming languages.
The SPARK subset of Ada comes pretty close to enforcing purity of Ada functions, although it still permits them to read globals. [0]
It's not just an oversight. The core of the Ada language was designed deliberately. [1]
[0] https://learn.adacore.com/courses/intro-to-spark/chapters/01...
[1] https://en.wikipedia.org/wiki/Ada_(programming_language)#His...
Still, I don't feel many people want to use Object Pascal these days. If you have the choice between Python and Object Pascal, most people will undoubtedly use Python. It's just how it is right now, and I also don't see how that can change in favour of Object Pascal. Programming languages nowadays have so much more competition, and people are less tolerant of flaws. Strangely enough, people barely seem to work on these flaws; this is one of my pet peeve with ruby, the documentation should be much better but it is not. I no longer find that acceptable in 2026, with AI spam slop lowering the quality and google search being terrible and almost totally useless nowadays. You'd assume that a counter-move to this slop-degradation would be to massively improve documentation, but you still find core projects in ruby or at the least important add-ons, to have low-quality documentation. And barely anybody wants to improve on that either.