Comment by applfanboysbgon
9 hours ago
Comptime? Vastly superior toolchain? Trivial C interop? Sub-second incremental compilation in large projects? I'm not familiar with Object Pascal at all, so do correct me if I'm wrong, but I'd really be surprised if it has much of Zig's standout features.
Delphi would compile & link 2 MLOC of code on a crappy work laptop in 30 seconds to a minute. Incremental compiles were instant. So fast most developers never bothered learning the "go to next error" hotkey and just spammed F9 (compile & run) whenever they fixed a syntax error. It was that fast.
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.
Oh my gosh! Core memories unlocked:
> 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.
Comptime here means not "compilation time", but rather ability to run some your code during compilation (i. e. compile-time metaprogramming). Pascal didn't had this.
They probably know that. I specifically mentioned actual compilation time as another one of the things that's great about Zig, so it is relevant to mention. Certainly the language sounds nice from what I'm hearing. These days most languages are deeply neglecting compilation time as a feature (interpreted languages aside), so Zig is a breath of fresh air for me in that regard.
2 replies →
> Comptime? Vastly superior toolchain? Trivial C interop? Sub-second incremental compilation in large projects?
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 then Delphi) had.
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
> 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.
1 reply →
Object Pascal has more runtime reflection features which were added to facilitate visual programming paradigm. Do you know what can be faster than sub-second incremental compilation ? Run-time/Design-time manipulation !
Comptime is the only thing going for it.
Object Pascal compilers were already super fast in MS-DOS hardware!