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

It's interesting how the introduction of "modules" has forced so many to stick with C++17 and Java 8.


C++ has barely any feature complete compiler implementations and build systems aren’t ready for all of its additions, either (CMake and modules in particular). libstdc++ and libc++, gcc and clang are all not ready for production use or rather untested and/or buggy.

Unless you’re targeting MSBuild Visual Studio Solutions and Windows only, C++17 is currently the most up to date, stable, and battle-proven version.


It's a shame "C with classes", as C++ originally was, didn't stick around for parallel development.

I work with C daily and I'm well aware of its many shortcomings (e.g. its huge list of undefined behavior and its PDP11-centric view of modern architectures), but with some effort I believe it could function as a semi-portable second-level intermediate representation. Nim uses it as such, IIRC.

Compiling to C first would introduce some of its own issues, for sure, but I imagine doing so would alleviate the pressure the C++ standards committee puts on compiler vendors each time they expand the size of the kitchen sink.


Rust ?


Rust compiles to C and then passes that C to a C compiler to generate machine code?


> gcc and clang are all not ready for production use or rather untested and/or buggy.

Which items from this table are lying about GCC v11 support of C++20? [1] Which of the features are buggy in GCC v11-12?

[1] https://en.cppreference.com/w/cpp/compiler_support#cpp20




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

Search: