Hacker News new | ask | show | jobs
by pjmlp 1089 days ago
Only when considering clean builds as building the whole world from scratch.

Which we seldom due on most C++ projects, we rather rely on binary libraries and build only our own code.

Also when comparing with Delphi, Ada, D, or even Haskell or OCaml, it isn't that great.

You might feel like pointing out that Haskell or OCaml can be even slower, which is true, however they package multiple toolchains and a REPL, and as of today Rust still isn't as flexible in having multiple toolchains for different purposes.

1 comments

> Which we seldom due on most C++ projects, we rather rely on binary libraries and build only our own code.

Depends on the project. Many commercial projects do vendor dependencies and build them too, because you can't rely on the OS version. Especially on Windows or with more niche dependencies.

Just compiling Boost takes 15 minutes - more than any Rust project I've ever compiled.

Not sure what you mean about multiple toolchains.

On Windows even more so, as most folks do heavy use of DLLs and COM.

And yes exporting C++ from DLLs is compiler specific, which doesn't matter, as there is only one specific compiler version that is usually validated for the whole project delivery pipeline.

Plus we can edit and continue on C++ Builder and Visual C++, with incremental compiler and incremental linker.

There is a reason why so many companies forbid Boost.

Regarding toolchains, JIT, AOT, bytecode interpreter, REPL. Here, 4 variants to compile and execute code, depending on release requirements and developer workflow loop, each with its own sets of plus and minus. It is great when there is a choice.