GuB-42
5 days ago
Looking at this makes me nostalgic in a way the author probably hasn't intended.
Rust is notorious for its slow compile times, while Turbo Pascal was known to be blazingly fast. And the debugger, one of the most important part of the experience is "Not implemented". Dressing it as a 1989 IDE makes me painfully aware of what we have lost. Despite running on hardware that were orders of magnitudes slower than today, software used to be more responsive.
By "more responsive" I mean that while modern systems are excellent at batch processing, latency is often not great, and because so much happens in parallel, also confusing.
pjmlp
5 days ago
Some of us still haven't lost it thanks to Delphi, C++ Builder, .NET or even Java.
However they aren't fashionable in the days of Electron and CLI nostalgia.
So you end up with Go on vim, instead of FreePascal on Lazarus.
wojtczyk
5 days ago
It was intended to evoke emotions. I really consider this more of an art project than a developer tool.
I will see about the debugger.
anta40
4 days ago
>> Rust is notorious for its slow compile times
Don't forget Haskell. And what's other... C++, OCaml, etc?
I guess a language with complex/complicated design is difficult to be compiled "blazing fast"
GuB-42
4 days ago
Rust is not alone to compile slowly. And yes, there are reasons, but if you want to pick a language to fit the Turbo Pascal vibes, that's not it.
Zig and Go would probably be better modern languages for this. Also "Turbo Zig" and "Turbo Go" sound cool, "Trust" sounds too corporate :)
fithisux
3 days ago
Or Blooshed Dev-Zig
Heck, the UI is in Delphi.
pjmlp
4 days ago
Not really, because contrary to Rust, Haskell, C++ and OCaml have faster alternatives, even though some people decide to ignore them to their own pain.
Haskell has GHCi, where you can pre-compile modules and play around in the repl with code that is more in flow.
OCaml has a bytecode interpreter, and a repl, thus you can compile only what you need, and do the full compilation for proper releases.
C++, well, yes it is slow, if you don't make use of binary libraries, external templates, incremental compilation and incremental linking, parallel builds, hot code reloading (VC++ and Live++), or REPLs (ROOT/cling, Clang-Repl).
wojtczyk
4 days ago
Right, we can appreciate a lot of the heavy weight lifting by the compiler or blazing fast translations... in the latter case an assembler would do
japgolly
3 days ago
Scala is painfully slow to compile too
TacticalCoder
4 days ago
There are hardware reasons too, related to polling frequencies etc.
Great article for those interested in the matter:
wojtczyk
4 days ago
Great article. Thanks for sharing.
IshKebab
3 days ago
What do you mean the debugger is "not implemented"? I debug Rust code all the time with CodeLLDB. Works perfectly. Better than C++ in most ways.
ameliaquining
3 days ago
That's referring to this specific retro-style IDE, which doesn't yet have a debugger UI; selecting the "Debug" menu item produces a "not implemented yet" error.