Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

"Many—especially historically minded—developers complain that modern C++ compilers take longer to compile. But this criticism is short‑sighted. You cannot compare C++ compile times with compilation in other languages, because the compiler is doing something entirely different."


If only it would do something entirely different faster. :-(

Somebody really needs to rethink the entire commitment to meta-programming. I had some hope that concepts would improve reporting, but they seem to actually make it worse, and -- if they improve compile times at all, I'm not seeing it.

And it has nothing to do with historicity. Every time I visit another modern language (or use it seriously) I am constantly reminded that C++ compile times are simply horrible, and a huge impediment to productivity.


A slow compiler impedes developers velocity, not only taking longer, but breaking their concentration.

The whole point of a programming language is to be an industrial productivity tool that is faster to use than hand writing assembly.

Performance is a core requirement industrial tools. It's totally fine to have slow compilers in R&R and academia.

In industry a slow compiler is an inexcusable pathology. Now, it can be that pathology can't be fixed, but not recognizing it as a pathology - and worse, inventing excuses for it - implies the writer is not really industrially minded. Which makes me very worried why they are commenting on an industrial language.


We can easily complain, because there were attempts to improve in the past like Energize C++ and Visual Age for C++ v4, or systems like Live++.

However too many folks are stuck in the UNIX command line compiler mindset.

I keep bumping into people that have no idea about the IDE based compilation workflows from C++ Builder and Visual C++, their multihreaded compilation, incremental compilation and linking, pre-compiled headers that actually work, hot code reloading, and many other improvments.

Or the CERN C++ interpreters for that matter.

Many don't seem to ever have ventured beyond calling gcc or clang with Makefiles, and nothing else.


As a long-time C++ user I definitely complain that C++ takes long to compile. Then again, I always have.


I wonder if it's time to implement some library features in the compiler. Some things are very widely used and very rarely modified. It should be possible to opt out and use the library version, of course.


This is also because llvm and gcc are just slow right? Are there any alternative c++ compiler that is faster maybe?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: